2011-11-05 92 views
1

我在C#Silverlight應用程序中有一個組合框。我的視圖模型有一個名爲DayOfWeek的屬性。此屬性需要匹配standard .NET DayOfWeek EnumerationSilverlight - 枚舉綁定

有沒有一種方法可以用這個枚舉的值填充我的組合框?另外,有沒有辦法讓我的視圖模型連接起來,以便選擇的值來回傳播到/從我的viewmodel?如果是這樣,怎麼樣?

回答

0

在您的視圖模型:

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值會發生變化。如果您想更改代碼的值,請執行,並從SelectedDay的設置者處啓動PropertyChanged