我想datacontext
在单个Combobox
. 我试过这样
this.courseList.DataContext = ldc.Courses.OrderBy(x => x.CourseID);
this.courseList.Items.Add("All");
this.courseList.Items.Add("Others");
但是,这InvalidOperationException was Unhandeled
表明Items collection must be empty before using ItemsSource.
然后我就这样试了
this.courseList.Items.Add("All");
foreach (var items in ldc.Courses.OrderBy(x => x.CourseID))
{
this.courseList.Items.Add(items);
}
this.courseList.Items.Add("Others");
它像这张图片一样工作
因为我在 XAML 设计中为此使用了 ItemTemplate,Combobox
所以它并没有完全按照我的方式显示这两个值All
和Others
.
这里是ItemTemplate
<DataTemplate x:Key="CourseTemplate">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=CourseID}"/>
<TextBlock Text=" : "/>
<TextBlock Text="{Binding Path=CourseName}"/>
</StackPanel>
</DataTemplate>
...
<ComboBox Name="courseList" VerticalAlignment="Top" SelectionChanged="courseList_SelectionChanged" IsSynchronizedWithCurrentItem="True" ItemsSource="{Binding}" ItemTemplate="{StaticResource CourseTemplate}"/>
我希望它根据 DataTemplate 查看数据库条目和简单字符串,以及All
分别Others
如下图所示。
All
Others
有什么建议么。谢谢你。