我有一个 Observable Collection,我正在尝试将其绑定到 ItemsControl。以下是我的代码片段。
类 Sample.ViewModel:
//Observabale collection getter/setter property
public ObservableCollection<SQuestion> SList
{
get
{
return _sList;
}
set
{
if (_sList == value)
return;
_sList = value;
if(PropertyChanged!=null)
PropertyChanged(this, new PropertyChangedEventArgs("ListOfSamples"));
}
}
.xaml 代码:
查看/Mainwindow.xaml
<ItemsControl Height="422" HorizontalAlignment="Left" Margin="12,12,0,0" Name="listBox1" VerticalAlignment="Top" Width="751" ItemsSource="{Binding SList}" ItemTemplate="{StaticResource perItemTemplate}"/>
在上面的代码中,我指定了 ItemsSource 绑定,但在运行我的应用程序时,列表不会出现在 ItemsControl 中,并且所有内容都显示为空白。:
但是,如果我尝试从我的 .cs 代码隐藏中将源分配给 Listbox因为listBox1.ItemsSource = SList
,列表框被填充并按预期工作。
有人可以指出上面我正在做的绑定有什么问题,以便我可以直接从 xaml 绑定而不使用代码隐藏?