2010-11-11 135 views
2

有誰知道如何一個人可以綁定數據綁定enum字段這是一個組合的ORed基地enum? 說我有數據綁定枚舉複選框C#

MyEnumType 
{ 
    e1=0x1, 
    e2=0x2, 
    e3=0x4 
} 

,然後我做

MyEnumType myEnum = MyEnumType.e1 | MyEnumType.e3 

然後我想顯示可用於設置myEnum值的對話框。 現在我有一堆複選框,每個複選框對應於enum類型中的不同值。 根據檢查的內容我循環通過它們等等。沒有數據綁定完成,全部是手動。

+0

Thanx提醒它 – Nickolodeon 2010-11-11 11:37:17

回答

2

Google對於FlaggedEnumEditor。這將是理解這個概念的一個足夠好的例子。

2

我想創建一個輔助類(視圖模型):

  • 本來性質稱爲E1,E2等
  • 的類將實現IPropertyChanged
  • 每個屬性的設定方法將更新基礎值,get方法將從基礎值讀取。
  • 每當底層值發生變化時,您需要確定哪些屬性已更改並正確調用IPropertyChanged。

然後只是將複選框數據綁定到屬性。

但是,如果我有不止一個這樣的枚舉,我會開始尋找解決方案,不需要我編寫這麼多的代碼。