मैं विरासत win32 एप्लिकेशन में WPF विंडो का उपयोग करना चाहता हूं। मैं उन्हें उसी तरह से व्यवहार करना चाहता हूं, जैसे कि WP32 विंडो हमेशा Win32 विंडो के शीर्ष पर प्रदर्शित होती है।WP32 विंडो के मालिक के रूप में Win32 विंडो को कैसे सेट करें?
इसके लिए मैं Win32 विंडो के लिए WPF विंडो के मालिक को सेट करना चाहता हूं, लेकिन मुझे नहीं पता कि इसे कैसे प्राप्त किया जाए।
कोई मदद यहाँ?
के बाद से इस सवाल का जवाब कुछ लिंक, यहाँ के पीछे कोड है कि चाल किया था छिपा है:
System::Windows::Interop::WindowInteropHelper^ helper = gcnew System::Windows::Interop::WindowInteropHelper(myWpfChildWindow);
helper->Owner = (System::IntPtr)myMainWindowHWND;
हां, दूसरे आलेख ने निम्न पंक्तियों को कम करने के लिए चाल बनाई: सिस्टम :: विंडोज :: इंटरऑप :: विंडोइंटरोपेलपर^हेल्पर = जीसीएनयू सिस्टम :: विंडोज :: इंटरऑप :: विंडोइंटरोपेलपर (myWpfChildWindow); सहायक-> स्वामी = (सिस्टम :: IntPtr) myMainWindowHWND; – Sam
खुशी है कि आप इसे काम कर रहे हैं! –
यह .NET 4 पर काम करता है लेकिन .NET 3.5 नहीं। .NET 3.5 पर, WindowInteropHelper की मालिक संपत्ति को बदलने का कोई प्रभाव नहीं पड़ता है। क्या कोई जानता है क्यों, और एक कामकाज? –