从列表框中列出的对象访问参数 C#

Access parameters from an object listed in a listbox c#

我的程序中有几个 classes,我正在使用 Windows Form 从不同的 classes 创建对象并将它们列在不同的列表框中。

现在我有一个包含所有列表框的表单 (Form 1) 和另一个表单 (CreerVoiture),我在其中放置了所有信息以创建我选择的对象。

例如,当我单击按钮 "Voiture!" 时,我的第二个表单打开,当我添加所有信息并按下 "Ajouter" 时,它会将对象添加到所选的列表框中。

来自 Form1 的代码:

private void button1_Click(object sender, EventArgs e)
    {
        CreerVoiture creervoiture = new CreerVoiture();
        if (creervoiture.ShowDialog(this) == DialogResult.OK)
        {
            // Read the contents of form2's TextBox.
            Voiture voiture = new Voiture(creervoiture.GetMarque(), creervoiture.GetPrix(), creervoiture.GetConsommation(), creervoiture.GetReservoir());
            this.list_voiture.Items.Add(voiture);

            this.list_voiture.DataSource = null;
        }
        creervoiture.Dispose();
    }

我想知道的是,在将参数添加到列表框后,如何访问我在第二个表单中添加的参数。

我想使用类似的东西:

list_voiture.SelectedItem.Prix

Prix 是 getter 来自我的 class Voiture

public double Prix
    {
        get { return this.prix; }
        set { this.prix = value; }
    }

但这似乎不可能。这可能吗?如果可能,怎么做?

提前致谢,

杰里米

如果对象的类型是 Voiture 那么您可以将对象转换为该类型:

Voiture voiture = (Voiture)list_voiture.SelectedItem;
double prix = voiture.Prix;

或一行:

double prix = ((Voiture)list_voiture.SelectedItem).Prix;