मैंने चारों ओर खोज की है और यह कम्बोबॉक्स में enums को बांधना बहुत आसान लगता है, बस Enum मानों को Stic Enum.GetValues विधि से ऑब्जेक्टडेटाप्रोवाइडर के माध्यम से तारों की सूची के रूप में पुनर्प्राप्त करें, हालांकि मैं इसे काम नहीं कर सकता। त्रुटि टाइप है संपर्क एक्सपोर्ट टाइप टाइप नहीं किया गया था।कॉम्बोबॉक्स एनम के लिए बाध्यकारी, मैंने क्या गलत किया?
मेरे पास ContactExportType नामक एक enum है, यह Enums क्लास पर रहता है। यह वर्ग CEM.Marketing.Objects नामस्थान का हिस्सा है।
<UserControl
xmlns:local="clr-namespace:CEM.Marketing.Objects"
xmlns:sys="clr-namespace:System;assembly=mscorlib">
<Grid>
<Grid.Resources>
<ObjectDataProvider MethodName="GetValues"
ObjectType="{x:Type sys:Enum}"
x:Key="ContactExportTypes">
<ObjectDataProvider.MethodParameters>
<x:Type TypeName="local:ContactExportType" />
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</Grid.Resources>
</Grid>
<ComboBox
ItemsSource="{Binding {StaticResource ContactExportTypes}}"
...
धन्यवाद, एंजेला
धन्यवाद क्रिस:
यहाँ EnumValues मार्कअप विस्तार के लिए कोड है। मैं अलग-अलग चीजों की कोशिश करने के बाद एक्सएएमएल में ऐसा नहीं कर सका। ऐसा लगता है कि यह कक्षा संरचना में एक स्तर का समर्थन नहीं करता है। मैंने इसे काम करने के लिए क्या किया है, आइटम को स्रोत में बाध्य करना है। combobox.ItemsSource = Enum.GetValues (टाइपऑफ (Enums.ContactExportType)); – Angela