我尝试将一个wpf控件绑定到一个dicionary条目,如果它不存在,它应该创建它。
这里我已经得到了(例如,不是我的真实代码):
数据对象:
public class DataObject
{
public Dictionary<string,object> Values { get; set; }
}
VM:
public class ViewModel : NotificationObject
{
private DataObject _myObject = new DataObject();
public DataObject myObject
{
get {return _myObject;}
set {_myObject = value;}
}
public List<string> ValueList
{
get {return new List<string>{"Test Item 1","Test Item 2"};}
}
}
GUI:
<CustomVars:MyTextBox x:Name="MyValue1" Text="{Binding myObject.Values[Item1]}"/>
<CustomVars:MyComboBox x:Name="MyValue2" Text="{Binding myObject.Values[Item2]}" ItemsSource="{Binding ValueList}"/>
....
<CustomControls:Item Text="{Binding ElementName=MyValue1, Path=Text}"/>
<CustomControls:Selection Text="{Binding ElementName=MyValue2, Path=Text}" Items="{Binding ElementName=MyValue2, Path=Items}"/>
具有键Item2的项目已设置但不是Item1。有人可以告诉我为什么吗?
谢谢,达蒙
答案 0 :(得分:0)
我忘了将Mode=TwoWay
放在CustomControls的绑定中......