2010-09-16 30 views
5

मैं डब्ल्यूपीएफ में नया हूं। एक नया WPF UserControl बनाया गया। देखें कि एप्लिकेशन स्तर के संसाधनों के अंदर सेट करने के लिए कुछ लोग app.xaml फ़ाइल का उपयोग करते हैं।App.XAML आप कहाँ हैं?

मेरे समाधान में WinForm और एक WPF UserControl शामिल है। मुझे कहीं भी कोई app.xaml फ़ाइल नहीं दिखाई दे रही है।

कैसे आगे बढ़ें?

उत्तर

4

App.xaml एक WPF आवेदन से संबद्ध है में एक WPF नियंत्रण की मेजबानी कर रहे हैं पाने के लिए एक WPF या Silverlight आवेदन बनाना होगा। अगर आपको केवल UserControl मिल गया है, तो इसका कोई हिस्सा नहीं है, क्या वहां है?

एक WPF आवेदन बनाएँ और आप एक App.xaml में अनुप्रयोग स्तर संसाधनों डाल करने के लिए।

ब्याज से बाहर करना होगा, तुम क्यों आप एक WPF उपयोगकर्ता नियंत्रण उपयोग कर रहे हैं WinForm है?

संपादित करें: मेरी टिप्पणी दोहराने के लिए: आपको WPF एप्लिकेशन संसाधनों को आसानी से प्रदान नहीं किया जा रहा है जब आप एक WPF एप्लिकेशन नहीं बना रहे हैं।

संपादित करें: जब एंथनी ब्रायन के जवाब में बताया गया है, ऐसा लगता है आप के आसपास यह हैक कर सकते हैं - लेकिन मैं दृढ़ता से बात की इस तरह के खिलाफ की सिफारिश करता है, तो आप संभवतः यह मदद कर सकते हैं होगा। मूल रूप से, आप मंच की अपेक्षाओं के खिलाफ काम कर रहे हैं - और यह कभी भी अच्छी स्थिति में नहीं है।

+2

के बिना बस करना है क्योंकि हम डब्ल्यूपीएफ तत्वों के साथ मौजूदा बड़े WinForms एप्लिकेशन को भरने के लिए सोचते हैं। हम अभी सभी डब्ल्यूपीएफ को सीधे तर्क नहीं दे सकते हैं। – serhio

+1

मैं वास्तव में एक बड़े Winforms ऐप में WPF उपयोगकर्ता नियंत्रण होस्ट कर रहा हूं जो उम्मीद है कि एक पूर्णतः WPF ऐप बन जाएगा।लेकिन अगर यह एक नई परियोजना है, तो मैं जॉन स्कीट –

+0

से पूरी तरह से सहमत हूं यह एक डेमो एप्लीकेशन है। लेकिन उस डेमो का दायरा यह प्रदर्शित करना है कि WinForm WPF नियंत्रणों को कैसे होस्ट कर सकता है। तो सिद्धांत रूप में मैं इसे WPF एक में नहीं बदल सकता। – serhio

3

आप उस फ़ाइल आप वास्तव में एक Winforms आवेदन

+0

तो, पूरी तरह से WPF एप्लिकेशन के बिना मेरे पास app.xaml पर कोई acces नहीं है, क्या मैं सही हूँ? – serhio

+1

यदि यह डेमो एप्लिकेशन के लिए है, तो क्या आपको वाकई इसकी ज़रूरत है? –

+0

उस डेमो का दायरा यह प्रदर्शित करना है कि WinForm WPF नियंत्रणों को कैसे होस्ट कर सकता है। तो सिद्धांत रूप में मैं इसे WPF एक में नहीं बदल सकता। – serhio

3

यदि आपने WinForm प्रोजेक्ट बनाया है, तो उसके पास app.xaml नहीं होगा।

इसके बजाय एक WPF प्रोजेक्ट बनाएं।

+1

मुझे एक Winform हॉट डब्ल्यूपीएफ की जरूरत है। – serhio

2

यह लेख काफी विस्तार से एक की मेजबानी/इंटरॉप परिदृश्य में आवेदन विस्तृत संसाधन हैं करने के लिए कैसे में बताते हैं को देखो:

http://drwpf.com/blog/2007/10/05/managing-application-resources-when-wpf-is-hosted/

समाधान पथ मैं चुना है (लेख से) अनुप्रयोग शामिल करने के लिए है। एक पृष्ठ तत्व के रूप में XAML

संशोधित परियोजना फ़ाइल:

<Page Include="App.xaml" /> 
<Compile Include="App.xaml.cs"> 
    <DependentUpon>App.xaml</DependentUpon> 
    <SubType>Code</SubType> 
</Compile> 

कोड जोड़ें:

public App() 
{ 
    InitializeComponent(); 
} 

public static void EnsureApplicationResources() 
{ 
    if (Application.Current == null) 
    { 
     // create the Application object 
     new App(); 
    } 
} 

पूर्ण विवरण आलेख में हैं।

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