C# WPF使用DataTemplate将IEnumerable绑定到ListBox
我试图将IEnumerable类UserList绑定到XAML中的列表框,但无法解析对象的名称。我的xaml代码如下:C# WPF使用DataTemplate将IEnumerable绑定到ListBox,c#,.net,wpf,xaml,listbox,C#,.net,Wpf,Xaml,Listbox,我试图将IEnumerable类UserList绑定到XAML中的列表框,但无法解析对象的名称。我的xaml代码如下: <ListBox DockPanel.Dock="Left" x:Name="UserListBox" Width="400" ItemsSource="{Binding Source={StaticResource userList}}" ItemTemplate
<ListBox DockPanel.Dock="Left" x:Name="UserListBox" Width="400"
ItemsSource="{Binding Source={StaticResource userList}}"
ItemTemplate="{StaticResource UserListTemplate}">
</ListBox>
StaticResource扩展无法解析局部变量 创建如下所示的UserList属性,并将窗口的DataContext设置为
this
。如果希望能够在设置DataContext后添加或删除元素,则类UserList应实现INotifyCollectionChanged
接口。它可以通过从可观测集合
派生来实现
public src.UserList UserList { get; } = new src.UserList();
public MainWindow()
{
InitializeComponent();
DataConnection.CreateAndOpenDB();
// add elements to UserList here
DataContext = this;
}
然后用XAML编写绑定,如下所示:
ItemsSource="{Binding UserList}"
请参阅以获取介绍
ItemsSource="{Binding UserList}"