我想做一個簡單的雙向綁定與枚舉到組合框,但還沒有找到任何與我的代碼到目前爲止的作品。枚舉2路綁定與Combobox
我的枚舉(C#):
public enum CurrenciesEnum { USD, JPY, HKD, EUR, AUD, NZD };
枚舉應該設置該屬性/勢必:
private string _ccy;
public string Ccy
{
get
{
return this._ccy;
}
set
{
if (value != this._ccy)
{
this._ccy= value;
NotifyPropertyChanged("Ccy");
}
}
}
的XAML代碼不起作用:
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ObjectDataProvider x:Key="Currencies" MethodName="GetValues" ObjectType="{x:Type System:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="ConfigManager:CurrenciesEnum" />
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</ResourceDictionary>
</UserControl.Resources>
<ComboBox ItemsSource="{Binding Source={StaticResource Currencies}}" SelectedItem="{Binding Ccy, Mode=TwoWay}"/>
非常感謝您的幫助!
有什麼不對?你得到一個錯誤?組合框中沒有項目? Combobox不顯示正確的項目?當組合框中的選定項目更改時,綁定項目不會更改? – Natrium
組合框本身已被填充。 但是,當我選擇另一個值時,屬性似乎沒有更新 - 包含該屬性的對象實際上是網格中顯示的丟失的一部分,並且更改的行選擇不會保留ccy。 – goul
不好意思,實際上這個屬性是用新值正確設置的。 這個問題似乎是將新設置的值綁定到ComboBox。我應該使用轉換器還是類似的東西? – goul