2010-07-12 10 views
6

हेजइस यूआरआई के साथ क्या गलत है?

मैं उरी का उपयोग करके एक डब्ल्यूपीएफ अनुप्रयोग में एक (एम्बेडेड) छवि लोड करने की कोशिश कर रहा हूं लेकिन मुझे अपवाद मिल रहा है।

कोड है:

new BitmapImage(new Uri("pack://application:,,,,/Icons/m.png")); 

(मामले में यह स्पष्ट नहीं है, मैं प्रतीक फ़ोल्डर, जो एक एम्बेडेड ressource के रूप में चिह्नित किया गया है से m.png फ़ाइल लोड करने के कोशिश कर रहा हूँ)।

और अपवाद

है
NotSupportetException (the URI prefix is not recognized) 

किसी को भी मुझे बता सकते हैं क्या uri किया जाना चाहिए था?

उत्तर

2

आप this blog post पर एक नज़र डाल सकते हैं।

UriParser.Register(
    new GenericUriParser(GenericUriParserOptions.GenericAuthority), "pack", -1 
); 
+0

यदि कोई इस पृष्ठ पर उत्तर की तलाश में आता है, तो क्या आप हमें बता सकते हैं कि उस पोस्ट में क्या था जिसने मदद की? – Foole

+0

@ फोल, यह समस्या को हल करता है: 'उरीपार्सर। रजिस्ट्रार (नया जेनेरिक यूरीपार्सर (जेनेरिक यूरीपार्सऑप्शन। जेनरिक प्राधिकरण), "पैक", -1) '। –

4

तीन अल्पविराम के बजाय होना चाहिए अपने स्ट्रिंग में चार:

new BitmapImage(new Uri("pack://application:,,,/LibName;component/Icons/m.png")); 

LibName - जहां संसाधन होस्ट किया गया है विधानसभा के लिए अंक।

+0

यह रूप में अच्छी तरह एक अपवाद फेंकता है: समाधान एक कस्टम uri पार्सर रजिस्टर करने के लिए इतना है कि यह pack प्रोटोकॉल पहचानता है। –

+0

मुझे ऐसा नहीं लगता है। यदि यह एक WPF ऐप है तो इसे अपवाद नहीं फेंकना चाहिए। –

+0

आप सही हैं, लेकिन समस्या को ठीक करने के लिए पर्याप्त नहीं था। – tomjen

संबंधित मुद्दे