असाइन करने के लिए बाइंडिंग का उपयोग करता है मैं एक संबंधित छवि प्रदर्शित करने के लिए एक enum का उपयोग करने की कोशिश कर रहा हूं। इसके लिए मेरे पास एक वैल्यू कनवर्टर है जो एक एनम को सही संसाधन नाम में परिवर्तित करता है। मेरे संसाधन के रूप में निम्नानुसार परिभाषित कर रहे हैं:डब्ल्यूपीएफ स्थिर संसाधन
<UserControl.Resources>
<BitmapImage x:Key="AlarmCat1" UriSource="/Lib.Infrastructure;component/Resources/msg_cat1.bmp" />
<BitmapImage x:Key="AlarmCat2" UriSource="/Lib.Infrastructure;component/Resources/msg_cat2.bmp" />
<BitmapImage x:Key="AlarmCat3" UriSource="/Lib.Infrastructure;component/Resources/msg_cat3.bmp" />
<converters:JamCategoryToImageConverter x:Key="AlarmCategoryConverter" />
</UserControl.Resources>
यह काम करता है:
<Image Source="{StaticResource AlarmCat1}" />
लेकिन यह नहीं, कनवर्टर कहा जाता है करता है और सही मान वापस पारित कर दिया है। सही वाक्यविन्यास क्या है?
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
switch ((AlarmCategory)value)
{
case AlarmCategory.Category1:
return "AlarmCat1";
case AlarmCategory.Category2:
return "AlarmCat2";
case AlarmCategory.Category3:
return "AlarmCat3";
default:
return null;
}
}
बस मेरे कनवर्टर हटा दिया गया है ... लेकिन मैं आपके समाधान का भी प्रयास करने जा रहा हूं। अधिक सहज ज्ञान युक्त – uncletall
अपवाद फेंकना क्योंकि संसाधन एक ही असेंबली में नहीं है .. – uncletall
यह काम नहीं कर सकता है। मुझे यकीन है कि आप इसे दूसरे कोड के साथ काम करने के लिए प्राप्त कर सकते हैं, लेकिन अगर उपर्युक्त उत्तर काम करता है, तो मुझे इसका उपयोग करना चाहिए ;-) –