मैं WinXP पर एक WPF आवेदन लिख रहा हूँ और मैं इस तरह विस्टा विषय के साथ डिफ़ॉल्ट थीम अधिरोहित हैअवहेलना ओवरराइड WPF विषय
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
var themerd = new ResourceDictionary();
themerd.Source = new Uri(@"PresentationFramework.Aero;V3.0.0.0;31bf3856ad364e35;component\themes/aero.normalcolor.xaml", UriKind.Relative);
Resources.MergedDictionaries.Add(themerd);
}
और यह ज्यादातर ठीक काम करता है। जब मैं इस तरह के एक बटन के रूप में नियंत्रण का उपयोग करें:
<Button />
शैली ठीक लग रहा है, लेकिन अगर मैं इस तरह एक अलग शैली के साथ एक बटन का उपयोग करें:
<Button>
<Button.Style>
<Style TargetType="Button">
<Setter Property="Width" Value="80" />
</Style>
</Button.Style>
</Button>
शैली के साथ निर्दिष्ट विषय शैली को पार कर जाएगी इसके शीर्ष पर निर्माण के बजाय मानक WinXP शैली। यह मेरे लिए बेहद सीमित है। क्या इस मुद्दे से बचने का कोई तरीका है?
धन्यवाद, आपका जवाब वास्तव में सहायक था। ऐसा लगता है कि इस क्षेत्र में डब्ल्यूपीएफ की कमी है। इस समस्या को हल करने के लिए आप आमतौर पर किस विकल्प का उपयोग करते हैं? –
विकल्प 2 बहुत अच्छा है, कुछ हद तक यह गतिशील स्रोतों के आधार पर नहीं होने की समस्या के आसपास भी हो जाता है। –
मैं आम तौर पर ग्राहक को समझाकर इस मुद्दे को हल करता हूं कि वर्तमान ओएस थीम के साथ रहना बेहतर है क्योंकि विंडोज़ अंतिम उपयोगकर्ता को "सामान्य" दिखाई देगी। हालांकि मैंने उन स्थितियों में विकल्प 2 और विकल्प 3 दोनों का उपयोग किया है जहां मुझे यूआई के एक अनुभाग को पुन: स्थापित करने की आवश्यकता है, लेकिन यूआई (जैसे पॉपअप) का एक आंतरिक भाग * नहीं * को पुनर्स्थापित किया जाना चाहिए। –