我在C#Silverlight应用程序中有一个组合框。我的视图模型有一个名为DayOfWeek
的属性。此属性需要与standard .NET DayOfWeek
Enumeration匹配。
有没有办法可以使用此枚举的值填充我的组合框?另外,有没有办法让我用我的视图模型连接它,以便所选值传播到我的视图模型来回/从我的视图模型来回传播?如果是这样,怎么样?
答案 0 :(得分:0)
在ViewModel中:
private ObservableCollection<DayOfWeek> _weekDays;
// In the constructor:
_weekDays = new ObservableCollection<DayOfWeek>();
_weekDays.AddRange(new DayOfWeek[] {
DayOfWeek.Sunday,
DayOfWeek.Monday,
DayOfWeek.Tuesday,
DayOfWeek.Wednesday,
DayOfWeek.Thursday,
DayOfWeek.Friday,
DayOfWeek.Saturday
});
// Properties of your VM:
public ObservableCollection<DayOfWeek> WeekDays
{
get
{
return _weekDays;
}
}
public DayOfWeek SelectedDay
{
get;
set;
}
在XAML中:
<ComboBox
ItemsSource="{Binding WeekDays}"
SelectedItem="{Binding SelectedDay, Mode=TwoWay}"/>
使用组合框时,SelectedDay
的值会发生变化。如果您想更改代码中的值,请从INotifyPropertyChanged
的设置器中实施PropertyChanged
并触发SelectedDay
。