我有一個使用的組合框,其源極被綁定到Enum
類型的IEnumerable
的用戶控制(I有幾種不同類型的用戶定義的枚舉到在用戶控件中使用,因此請在我的用戶控件的後臺代碼中使用通用的IEnumerable<Enum>
)。但是,當我嘗試使用用戶控件在項目的後備代碼中創建IEnumberable
列表時,我無法將我自己的枚舉類型的IEnumerable
轉換爲泛型枚舉IEnumerable
。如何IEnumerable的轉換<MySpecificEnumType>到通用的IEnumerable <Enum>在WPF(C#)
我得到以下錯誤:
Unable to cast object of type
MyEnumType[]
to typeSystem.Enum[]
when I attempt to convert toEnum[]
. The code giving this error is:
public IEnumberable<Enum> MyEnums { get { return (Enum[])Enum.GetValues(typeof(MySpecificEnumType)); } }
我應該如何從我的枚舉類型的列表轉換爲通用Enum
類型的列表?或者我應該在用戶控件的後臺代碼中使用不同類型的IEnumerable
?
這是一個壞主意。不要在用戶控件中使用* generic *'IEnumerable'。使用非泛型'IEnumerable'作爲'ComboBox'的項目源。 –
Dennis