我是Wpf世界的新手,所以我創建了幾個視圖,它們都有至少一個ComboBox,因爲我使用的是MvvM模式,所以我一直在重新輸入相同的代碼行來填充組合,並獲得SelectedItem(創建屬性,私人和其他獲得)。Wpf Mvvm組合框
是否有某種框架可以改進這部分?或破解/技巧?因爲我看到太多重複的代碼......也許是我做錯了什麼,一起來看看:
XAML:
<ComboBox name= "cbDepartments" DisplayMemberPath="DepartmentName"
SelectedValuePath ="PrimaryKey"
ItemsSource="{Binding Path=Departments}"
SelectedItem="{Binding Path=DefaultBranch,Mode=TwoWay}"
>
視圖模型:
private Department defaultBranch;
public Department DefaultBranch
{
get
{
return this.defaultBranch;
}
set
{
if (this.defaultBranch != value)
{
this.defaultBranch = value;
this.OnPropertyChanged("DefaultBranch");
this.saveChangeCommand.RaiseCanExecuteChanged();
this.UserMessage = string.Empty;
}
}
}
private ObservableCollection<Department> departments;
public ObservableCollection<Department> Departments
{
get { return this.departments; }
set
{
if (this. departments!= value)
{
this. departments = value;
this.OnPropertyChanged("Departments");
}
}
}
它是同類ComboBox(也就是說,你是否有多個組合框分散在整個應用程序中?)如果是這樣的話 - 你可以製作一個自定義控件,該組件具有這種標記並繼承自ComboBox – Goblin 2010-06-09 19:55:14
@Goblin,感謝您的建議,但是我試圖在wpf中自定義一個控件,發現並不像在winform的世界中那麼容易... – 2Fast4YouBR 2010-06-10 14:36:10