我想能夠>通過外部ComboBox
一個DataGrid
的細胞來設置當前選擇的行的值。數據網格值綁定到外部組合框
我是在二傳手的一部分,工作正常,但不能使ComboBox
選定值匹配網格值代碼...看來我缺少的映射。
這是我有:
1- DataGrid綁定到一個ObservableCollection<Object>
:
<DataGrid ItemsSource="{Binding}"
SelectedItem="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}, AncestorLevel=2},
Path=SelectedCounterparty, Mode=TwoWay}">
2- ObservableCollection<Object>
具有被選擇,我應該結合到ComboBox一個屬性(即,組合框項應該採取屬性值):
public CurrenciesEnum Ccy
{
get { return this._ccy; }
set
{
if (value != this._ccy)
{
this._ccy = value;
NotifyPropertyChanged("Ccy");
}
}
}
3-組合框源是一個枚舉:
public enum CurrenciesEnum { USD, JPY, HKD, EUR, AUD, NZD };
4- ComboBox的當前映射:
<ObjectDataProvider x:Key="Currencies" MethodName="GetNames" ObjectType="{x:Type System:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="ConfigManager:CurrenciesEnum" />
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<ComboBox ItemsSource="{Binding Source={StaticResource Currencies}}" SelectedItem="{Binding Ccy, Mode=TwoWay}"/>
什麼工作:能夠通過組合框設置當前所選項目的「CCY」屬性在網格中。
什麼並不:組合框選擇的項目不是變化的線路時匹配在網格當前選擇的項目(和默認爲USD或先前選擇的值),換句話說似乎並不正確地綁定。任何想法如何解決這個問題
爲什麼' SelectedValuePath =「{Binding Ccy}」' - 只需嘗試'SelectedItem' – NSGaga
你有'_spc1Ccy' d _ccy'支持'相同的屬性 – NSGaga
更正了這兩個備註。就像我在同一時間測試一樣,只是錯字。這個問題仍然是相同的,雖然 – goul