سؤال

وتابعت الخطوات البسيطة الموضحة في كيفية: إضافة شاشة البداية ل تطبيق WPF لإضافة شاشة البداية إلى تطبيق WPF بلدي. عند بدء تشغيل التطبيق، يتم عرض الصورة البداية، ثم النافذة الرئيسية للملوثات العضوية الثابتة، وصورة البداية يتلاشى بعيدا.

ومشكلتي هي أنه عندما ينبثق الإطار الرئيسي حتى، يبدو على الجزء العلوي من صورة البداية. ثم عندما تبدأ صورة البداية لتتلاشى، وصورة البداية للملوثات العضوية الثابتة إلى الأعلى مرة أخرى. والنتيجة النهائية هي أن الصورة البداية يختفي لجزء من الثانية كما يظهر الإطار الرئيسي.

وكيف يمكنني إجبار النافذة الرئيسية لتظهر تحت الصورة البداية، بحيث لا تختفي الصورة البداية؟

هل كانت مفيدة؟

المحلول

وهذا ليس السلوك الافتراضي يجب أن يكون لديك بعض كود التركيز النافذة الرئيسية يدويا؟

قد يكون من الأسهل فقط لإيقاف تتلاشى يدويا مع قليل من التعليمات البرمجية مثل هذا:

و_splash = new SplashScreen("LoadingScreen.png");

و_splash.Show(false);

و_splash.Close(TimeSpan.Zero);

نصائح أخرى

في NET 4.0 على الزائد قد أضيفت للمعرض الأسلوب الذي يسمح لضبط WS_EX_TOPMOST نمط الإطار على نافذة شاشة البداية. تظهر شاشة البداية في التعليمات البرمجية مثل هذا:

SplashScreen splash = new SplashScreen("SplashScreen.png");
splash.Show(autoClose: true, topMost: true);

وأدعو أن من أسلوب

protected override void OnStartup(StartupEventArgs e)

وفي App.xaml.cs.

و"SplashScreen.png" بالطبع المعرف لصورة دفقة الخاص بك جزءا لا يتجزأ من الموارد للتطبيق.

ولست متأكدا إذا كان هذا سيساعد، ولكن إذا قمت بتعيين صاحب شاشة البداية إلى النموذج الحالي، ثم وهذا ينبغي أن ربما تفعل خدعة؟

_splash.Owner = this;

وإلا يمكنك أن تبحث هنا:

سبلاش الشاشة مثال

وهذا قد يساعد أيضا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top