winforms 在Windows Form中显示对象名称

nafvub8i  于 2022-11-17  发布在  Windows
关注(0)|答案(1)|浏览(154)

我正在做一个项目,我需要制作一个交互式的windows窗体应用程序来显示mandelbrot集合。现在我想在这个窗口上实现一个下拉列表,在那里你可以在mandelbrot集合的不同图片之间进行选择。我已经为这些图片的设置创建了一个类:

public class Mandelpoint
{
    public double x;
    public double y;
    public double s;
    public string name;

    public Mandelpoint(double x, double y, double s, string name)
    {
        this.x = x;
        this.y = y;
        this.s = s;
        this.name = name;
    }
}

我有以下下拉菜单:

presets = new ComboBox();
presets.Size = new Size(150, 20);
presets.Location = new Point(250, 20);
this.Controls.Add(presets);

presets.Items.Add(new Mandelpoint(0, 0, 0.01, "standard"));

如您所见,我希望combobox中的项为Mandelpoints。打开表单时,下拉列表如下所示:

是否有一种方法,例如通过在Mandelpoint类中定义某种MandelpointToString方法,使Mandelpoints在下拉列表中显示为它们的名称?如果有任何帮助,我们将不胜感激。

omjgkv6w

omjgkv6w1#

您可以实作ToString方法。

public class Mandelpoint
{
    public override string ToString()
        => name;
}

您也可以设定下拉式方块的DisplayMember

public class Mandelpoint
{
    public string Name => name;
}

presets.DisplayMember = "Name"

相关问题