型のプロパティが1つしかないバックグラウンドとクラスに(ViewModel
実装済み)があります。私のComboBoxSelectedItemは、Categoryのインスタンスにバインドされています。インスタンスの値を変更すると、SelectedItemが更新されず、Comboboxも変更されません。INotifyPropertyChanged
Category
string
編集:コード
コンボボックス:
<ComboBox x:Name="categoryComboBox" Grid.Column="1" Grid.Row="3" Grid.ColumnSpan="2"
Margin="10" ItemsSource="{Binding Categories}"
DisplayMemberPath="Name" SelectedValue="{Binding NodeCategory, Mode=TwoWay}"/>
財産:
private Category _NodeCategory;
public Category NodeCategory
{
get
{
return _NodeCategory;
}
set
{
_NodeCategory = value;
OnPropertyChanged("NodeCategory");
}
}
[Serializable]
public class Category : INotifyPropertyChanged
{
private string _Name;
[XmlAttribute("Name")]
public string Name
{
get
{
return _Name;
}
set
{
_Name = value;
OnPropertyChanged("Name");
}
}
public void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
[field:NonSerialized]
public event PropertyChangedEventHandler PropertyChanged;
}
そして私がしようとしているのは:私が設定したとき
NodeCategory = some_list_of_other_objects.Category;
そのアイテムCombobox
を適切に選択するDisplayMemberPath