我会尽可能地将其简化,以尽可能地理解这一点。 我创建了各种类(称为 Person1 , Person2 和 Person3 ) 每个变量都有自己的变量(例如名称,年龄和 ID )。 我创建了一个名为 PeopleArray 的一维数组,数组中最多包含10个条目,每个数组都包含一个类的实例。
注意:当表单被加载时,条目被放入数组并为每个适当的变量赋值
然后我创建了一个名为 ListOfPeople 的列表框,允许用户从数组中的条目中进行选择。 我想要做的是从适当的类中取一个变量,并在标签中显示它所持有的值。
为此我可以说我在位置[0]的数组中,该条目属于Person1类,我想找到“Name”变量的值。 在标签中显示的代码是什么? “Label.Text =”
注意:我希望代码可以执行的操作是考虑选择哪个条目,以前的示例形式的方法就足够了,我将从那里开始工作。
你可以给予任何帮助很多。谢谢
答案 0 :(得分:0)
WPF解决方案:
假设viewmodel上的属性:
public List<ListBoxPersonExample> ListBoxItems { get; set; }
public ListBoxPersonExample SelectedPerson
{
get { return _selectedPerson; }
set { _selectedPerson = value; RaisePropertyChanged("SelectedPerson");}
}
将班级ListBoxPersonExample
定义为:
public class ListBoxPersonExample
{
public ListBoxPersonExample(string name)
{
Name = name;
}
public string Name { get; set; }
public override string ToString()
{
return "My name is :" + Name;
}
}
此XAML将满足您的需求:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<ListBox Name="ListBoxName" ItemsSource="{Binding ListBoxItems}"
SelectedItem="{Binding SelectedPerson}"></ListBox>
<Label Grid.Column="1" Content="{Binding SelectedPerson.Name}"></Label>
</Grid>