我想将组合框绑定到可观察集合中的“列”。
private ObservableCollection<IUList> _ius = new ObservableCollection<IUList>();
public ObservableCollection<IUList> IUs
{
get
{
return _ius;
}
set
{
_ius = value;
RaisePropertyChanged("IUs");
}
}
public class IUList
{
public string Identifier { get; set; }
public string SourceTrackNumber { get; set; }
public string TrackBlockStart { get; set; }
public string TrackBlockEnd { get; set; }
public IUList(string id, string stn, string tbs, string tbe)
{
this.Identifier = id;
this.SourceTrackNumber = stn;
this.TrackBlockStart = tbs;
this.TrackBlockEnd = tbe;
}
}
我希望我的组合框中填充可观察到的集合中的所有“标识符”。我只是不太了解如何完成此任务。任何帮助表示赞赏。
c#/ UWP是否可以将组合框绑定到可观察集合中的某个“列”
答案 0 :(得分:1)
是的,可以使用数据绑定在uwp / wpf中轻松完成此操作。但是您必须仔细阅读ItemTemplate代码。
您可以这样编写xaml代码:
<ComboBox x:Name="comboBox">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Identifier}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
然后使用.cs代码
//Add data
IUList list1 = new IUList("1", "1", "1", "1");
IUList list11 = new IUList("11", "1", "1", "1");
IUList list111 = new IUList("1111", "1", "1", "1");
IUList list1111 = new IUList("11111", "1", "1", "1");
ObservableCollection<IUList> ius = new ObservableCollection<IUList>();
ius.Add(list1); ius.Add(list11); ius.Add(list111); ius.Add(list1111);
//Bind source
comboBox.ItemsSource = ius;
完成!然后你会看到
答案 1 :(得分:0)
您还可以这样编写combobox xaml代码:
<ComboBox x:Name="comboBox" Width="200" DisplayMemberPath="Identifier"/>