إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على: تطبيقات اللوحة
تغيير الشاشة التي يتم عرضها.
نظرة عامة
تحتوي معظم التطبيقات على شبكات متعددة. استخدم الدالة Back و Navigate لتغيير الشاشة التي يتم عرضها. على سبيل المثال، قم بتعيين الخاصية OnSelect لزر إلى صيغة تتضمن دالة Navigate إذا كنت تريد إظهار شاشة مختلفة عندما يحدد المستخدم هذا الزر. في هذه الصيغة، يمكنك تحديد انتقال مرئي، مثل تلاشي، للتحكم في كيفية تغير شاشة إلى أخرى.
Back وتغيير Navigate الشاشة التي يتم عرضها فقط. الشاشات غير المعروضة حاليًا تستمر في العمل خلف المشاهد. يمكنك بناء الصيغ التي تشير إلى خصائص عناصر التحكم على الشاشات الأخرى. على سبيل المثال، يمكن للمستخدم تغيير قيمة شريط التمرير على شاشة واحدة، والانتقال إلى شاشة مختلفة تستخدم هذه القيمة في الصيغة، وتحديد كيفية تأثيرها على ما يحدث في الشاشة الجديدة. يمكن للمستخدم بعد ذلك الانتقال إلى الشاشة الأصلية والتأكيد على أن شريط التمرير احتفظ بقيمته.
يتم أيضا الاحتفاظ بمتغيرات السياق عندما يتنقل المستخدم بين الشاشات. يمكنك استخدام Navigate لتعيين متغير سياق واحد أو أكثر للشاشة التي ستعرضها الصيغة، وهي الطريقة الوحيدة لتعيين متغير سياق من خارج الشاشة. يمكنك استخدام هذا الأسلوب لتمرير المعلمات إلى الشاشة. إذا كنت قد استخدمت أداة برمجة أخرى، فإن هذا الأسلوب يشبه تمرير المعلمات إلى الإجراءات.
استخدم في كائن التطبيق خاصية StartScreen للتحكم في الشاشة الأولى المراد عرضها.
يمكنك استخدام أي من الوظيفتين فقط داخل صيغة سلوك.
Navigate
في الوسيطة الأولى، حدد اسم الشاشة المراد عرضها.
في الوسيطة الثانية، حدد كيف تتغير الشاشة القديمة إلى الشاشة الجديدة:
| وسيطة الانتقال | الوصف | التوضيح |
|---|---|---|
| سكرينالانتقال.غطاء | تنزلق الشاشة الجديدة في طريقة العرض، وتتحرك من اليمين إلى اليسار لتغطية الشاشة الحالية. |
|
| ScreenTransition.CoverRight | تنزلق الشاشة الجديدة في طريقة العرض، وتتحرك من اليسار إلى اليمين لتغطية الشاشة الحالية. |
|
| انتقال الشاشة.تتلاشى | تختفي الشاشة الحالية لتظهر الشاشة الجديدة. |
|
| ScreenTransition.None (افتراضي) | تحل الشاشة الجديدة محل الشاشة الحالية بسرعة. |
|
| ScreenTransition.UnCover | تنزلق الشاشة الحالية خارج طريقة العرض، وتتحرك من اليمين إلى اليسار، لكشف الشاشة الجديدة. |
|
| ScreenTransition.UnCoverRight | تنزلق الشاشة الحالية خارج طريقة العرض، وتتحرك من اليسار إلى اليمين، لكشف الشاشة الجديدة. |
|
يمكنك استخدام Navigate لإنشاء متغيرات سياق الشاشة الجديدة أو تحديثها. كوسيطة ثالثة اختيارية، قم بتمرير سجل يحتوي على اسم متغير السياق كاسم عمود والقيمة الجديدة لمتغير السياق. هذا السجل هو نفس السجل الذي تستخدمه مع وظيفة UpdateContext.
قم بتعيين خاصية OnHidden الخاصة بالشاشة القديمة، وخاصية OnVisible الخاصة بالشاشة الجديدة، أو كليهما لإجراء تغييرات إضافية أثناء الانتقال. سيتم تحديث خاصية App.ActiveScreen لإظهار التغيير.
Navigate عادة ما ترجع true ولكنها سترجع false إذا تمت مصادفة خطأ.
يتم شرح متغيرات السياق الخاصة بالتنقل في المقالة التنقل بين الشاشات.
Back
Back ترجع الدالة إلى الشاشة التي تم عرضها مؤخرا.
Navigate لكل مكالمة، يتتبع التطبيق الشاشة التي ظهرت والانتقال. يمكنك استخدام المكالمات المتتالية Back للعودة إلى الشاشة التي ظهرت عندما بدأ المستخدم التطبيق.
عند تشغيل الدالة Back ، يتم استخدام الانتقال العكسي بشكل افتراضي. على سبيل المثال، إذا ظهرت شاشة خلال الانتقال CoverRight ، Back يستخدم UnCover (الذي هو إلى اليسار) للعودة. تتلاشى ولا شيء هي معكوسات خاصة بهم. تمرير وسيطة اختيارية لفرض Back انتقال معين.
Back عادة ما ترجع true ولكنها ترجع false إذا لم ينتقل المستخدم إلى شاشة أخرى منذ بدء تشغيل التطبيق.
بناء الجملة
Back( [ انتقال ] )
- الانتقال - اختياري. الانتقال المرئي لاستخدامه بين الشاشة الحالية والشاشة السابقة. ارجع إلى قائمة القيم الصالحة لهذه الوسيطة سابقًا في هذه المقالة. بشكل افتراضي، يكون الانتقال الذي تعود من خلاله الشاشة هو معكوس الانتقال الذي ظهرت من خلاله.
Navigate( الشاشة [، الانتقال [، UpdateContextRecord ] ] )
- الشاشة - مطلوبة. الشاشة المراد عرضها. في مكان الشاشة، يمكنك أيضا استخدام عنصر تحكم على الشاشة الذي ترغب في الانتقال إلى داخله.
- الانتقال - اختياري. الانتقال المرئي لاستخدامه بين الشاشة الحالية والشاشة التالية. راجع قائمة القيم الصالحة لهذه الوسيطة سابقًا في هذه المقالة. القيمة الافتراضية هي بلا.
- UpdateContextRecord - اختياري. سجل يحتوي على اسم عمود واحد على الأقل وقيمة لكل عمود. يقوم هذا السجل بتحديث متغيرات السياق الخاصة بالشاشة الجديدة في حالة تمريرها إلى وظيفة UpdateContext.
الأمثلة
| صيغة | الوصف | نتيجة |
|---|---|---|
| Navigate( تفاصيل ) | عرض شاشة التفاصيل دون انتقال أو تغيير في قيمة متغير سياق. | تظهر شاشة التفاصيل بسرعة. |
| Navigate( تفاصيل، ترجمة الشاشة.تتلاشى ) | عرض شاشة التفاصيل باستخدام انتقال تلاشي. لم يتم تغيير القيمة لمتغير السياق. | تتلاشى الشاشة الحالية لإظهار شاشة التفاصيل. |
| Navigate( التفاصيل، ScreenTransition.Fade، { ID: 12 } ) | عرض شاشة التفاصيل باستخدام انتقال تلاشي، وتحديث قيمة متغير سياقالمعرف إلى 12. | تتلاشى الشاشة الحالية لإظهار شاشة التفاصيل، ويتم تعيين متغير السياق المعرف على هذه الشاشة إلى 12. |
| Navigate( تفاصيل, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } ) | عرض شاشة التفاصيل باستخدام انتقال تلاشي. تحديث قيمة متغير سياق المعرف إلى 12، وتحديث قيمة متغير سياق التلاشي إلى Color.Red. | تتلاشى الشاشة الحالية لإظهار شاشة التفاصيل. تم تعيين متغير السياق المعرف على شاشة التفاصيل إلى 12، وتم تعيين متغير السياق تلاشي إلى Color.Red. إذا قمت بتغيير خاصية Fill الخاصة بعنصر تحكم على شاشة التفاصيل إلى تلاشي، سيتم عرض عنصر التحكم هذا باللون الأحمر. |
| Back() | عرض الشاشة السابقة مع انتقال الإرجاع الافتراضي. | عرض الشاشة السابقة من خلال الانتقال العكسي للانتقال الذي ظهرت من خلاله الشاشة الحالية. |
| Back( ترجمة الشاشة.Cover ) | عرض الشاشة السابقة مع انتقال التغطية. | عرض الشاشة السابقة من خلال انتقال التغطية، بغض النظر عن الانتقال الذي ظهرت من خلال الشاشة الحالية. |
خطوة بخطوة
أنشئ تطبيقًا فارغًا.
أضف شاشة أخرى إليه.
يحتوي التطبيق على شاشتين فارغتين: Screen1 وScreen2.
قم بتعيين خاصية Fill الخاصة بـ Screen2 إلى القيمة
Gray.على Screen2، أضف زرًا، وقم بتعيين خاصية OnSelect الخاصة به إلى هذه الصيغة:
Navigate( Screen1, ScreenTransition.Cover )حدد الزر أثناء الضغط على مفتاح Alt.
تظهر الشاشة 1 بخلفية بيضاء من خلال انتقال يغطي إلى اليسار.
على Screen1، أضف زرًا، وقم بتعيين خاصية OnSelect الخاصة بها إلى هذه الصيغة:
Back()حدد الزر أثناء الضغط على مفتاح Alt.
تظهر الشاشة الثانية بخلفية رمادية من خلال انتقال يكشف إلى اليمين (معكوس التغطية).
حدد الزر الموجود على كل شاشة بشكل متكرر للارتداد ذهابًا وإيابًا.