إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على: تطبيقات اللوحة
إنشاء أو تحديث متغيرات السياق الخاصة بالشاشة الحالية.
النظرة العامة
استخدم الدالة UpdateContext لإنشاء متغير سياق، والذي يحتوي مؤقتا على جزء من المعلومات، مثل عدد المرات التي حدد فيها المستخدم زرا أو نتيجة عملية بيانات.
يتم تحديد متغيرات السياق على شاشة، مما يعني أنه لا يمكنك بناء صيغة تشير إلى متغير السياق على شاشة أخرى. إذا كنت قد استخدمت أداة برمجة أخرى ، فيمكنك التفكير في متغير سياق مشابه لمتغير محلي. استخدم وظيفة Set للعمل مع المتغيرات العامة المتاحة في جميع أنحاء تطبيقك.
يستند Power Apps إلى الصيغ التي تقوم تلقائيا بإعادة حسابها أثناء تفاعل المستخدم مع أحد التطبيقات. لا تقدم متغيرات السياق هذه الميزة ويمكن أن تجعل إنشاء التطبيق وفهمه أكثر صعوبة. قبل استخدام متغير سياق، راجع التعامل مع المتغيرات.
الوصف
لإنشاء متغير سياق أو تحديثه، مرر سجلا واحدا إلى الدالة UpdateContext . في كل سجل، حدد اسم العمود، الذي يحدد أو يتطابق مع اسم المتغير، والقيمة التي تريد تعيين هذا المتغير إليها.
- إذا حددت اسم متغير قمت بتعريفه مسبقا، UpdateContext فعين قيمة المتغير إلى القيمة التي تحددها.
- إذا قمت بتحديد اسم متغير غير موجود بعد، UpdateContext يقوم بإنشاء متغير بهذا الاسم وتعيين قيمة هذا المتغير إلى القيمة التي تحددها.
- إذا سبق لك تحديد متغير ولكنك لم تحدده في هذه الصيغة المعينة UpdateContext ، فستظل قيمته كما هي.
يتم إنشاء متغيرات السياق ضمنيا باستخدام الدالة UpdateContext أو Navigate. لا يوجد تصريح صريح مطلوب. إذا قمت بإزالة كافة UpdateContext مراجع وتنقل إلى متغير سياق، فسيتوقف متغير السياق هذا عن الوجود. لمسح متغير، قم بتعيين قيمته إلى نتيجة وظيفة Blank.
يمكنك أن ترى قيم المتغيرات والتعاريف والاستخدامات مع عرض المتغيرات ضمن قائمة الملف في بيئة التأليف.
يمكنك الرجوع إلى متغير سياق في صيغة باستخدام اسم عمود المتغير. على سبيل المثال، UpdateContextيقوم ( { ShowLogo: true } ) بإنشاء متغير سياق يسمى ShowLogo وتعيين قيمته إلى true. يمكنك بعد ذلك استخدام قيمة متغير السياق هذا باستخدام الاسم ShowLogo في صيغة. يمكنك كتابة ShowLogo مثل صيغة خاصية Visible لعنصر تحكم image وإظهار أو إخفاء عنصر التحكم هذا بناءً على ما إذا كانت قيمة متغير السياقصواب أو خطأ.
كما تظهر الأمثلة في هذا الموضوع لاحقًا ، يمكن لمتغيرات السياق أن تحتفظ بعدة أنواع من المعلومات ، بما في ذلك ما يلي:
- قيمة واحدة
- سجل
- جدول
- مرجع كائن
- أي نتيجة من الصيغة
متغير سياق يحتفظ بقيمته حتى يتم إغلاق التطبيق. إذا قمت بتعريف متغير سياق وقمت بتعيين قيمته على شاشة معينة ، فستظل هذه المعلومات كما هي حتى إذا قام المستخدم بالتبديل إلى شاشة مختلفة. بمجرد إغلاق التطبيق ، ستفقد قيمة متغير السياق ويجب إعادة إنشائها عند تحميل التطبيق مرة أخرى.
يتم تحديد نطاق كل متغير سياق على الشاشة. إذا كنت تريد تحديد متغير سياق على شاشة واحدة وتعديل هذا المتغير من شاشة أخرى ، يجب عليك بناء صيغة تعتمد على وظيفة Navigate. أو استخدم متغيرًا عموميًا.
UpdateContext لا تحتوي على قيمة إرجاع، ويمكنك استخدامها فقط ضمن صيغة سلوك.
بناء الجملة
UpdateContext( UpdateRecord )
- UpdateRecord - مطلوب. سجل يحتوي على اسم عمود واحد على الأقل وقيمة هذا العمود. يتم إنشاء أو تحديث متغير سياق لكل عمود وقيمة تحددها.
UpdateContext( { ContextVariable1: Value1 [, ContextVariable2: Value2 [, ... ] ] } )
- ContextVariable1 - مطلوب. اسم متغير السياق المراد إنشاؤه أو تحديثه.
- القيمة 1 - مطلوب. القيمة المطلوب تخصيصها لمتغير السياق.
- ContextVariable2: Value2, ... - اختياري. متغيرات السياق الإضافية المراد إنشاؤها أو تحديثها وقيمها.
الأمثلة
| صيغة | الوصف | نتيجة |
|---|---|---|
| UpdateContext( { Counter: 1 } ) | إنشاء أو تعديل متغير السياق Counter، وتعيين قيمتها إلى 1. | العداد له القيمة 1. يمكنك الرجوع إلى هذا المتغير باستخدام الاسم Counter في صيغة. |
| UpdateContext( { Counter: 2 } ) | قم بتعيين قيمة متغير سياق Counter من المثال السابق إلى 2. | العداد له القيمة 2. |
| UpdateContext( { Name: "Lily", Score: 10 } ) | إنشاء أو تعديل متغيرات السياق Name وScore، مع تعيين قيمها إلى Lily و10 على التوالي. | الاسم له القيمة Lily ، والنتيجة لها القيمة 10. |
| UpdateContext( { Person: { Name: "Milton", Address: "1 Main St" } } ) | إنشاء أو تعديل متغير السياق Person، وتعيين قيمته إلى سجل. يحتوي السجل على عمودين باسم Name وAddress. وقيمة عمود Name هي Milton، وقيمة عمود العنوان هو 1 Main St. |
الشخص لديه قيمة اسم السجل { : "ميلتون" ، العنوان: "1 Main St". } } مرجع هذا السجل ككل بالاسم Person، أو مرجع عمود فردي لهذا السجل بـ Person.Name أو Person.Address. |
| UpdateContext( { Person: Patch( Person, {Address: "2 Main St" } ) } ) | التعامل مع وظيفة Patch لتحديث متغير سياق Person عن طريق تعيين قيمة عمود Address إلى 2 Main St. | الشخص لديه الآن قيمة اسم السجل { : "Milton" ، العنوان: "2 Main St". } } |
مثال 1 خطوة بخطوة
قم بتسمية الشاشة الافتراضية Source، وأضف شاشة أخرى، وقم بتسميتها Target.
على شاشة المصدر، أضف زرين، وقم بتعيين حصائص Text الخاصة بهما بحيث ينص أحد الزرين على اللغة الإنجليزية وينص الزر الآخر على اللغة الإسبانية.
قم بتعيين خاصية OnSelect الخاصة بزر اللغة الإنجليزية إلى هذا التعبير.
التنقل (الهدف ، ScreenTransition.Fade ، { اللغة: "الإنجليزية")}قم بتعيين خاصية OnSelect الخاصة بزر اللغة الإسبانية إلى هذا التعبير.
التنقل (الهدف ، ScreenTransition.Fade ، { اللغة: "الإسبانية}")على شاشة الهدف، أضف تسمية، وقم بتعيين خاصية Text الخاصة به إلى هذا التعبير:
إذا(اللغة = "الإنجليزية" ، "مرحبا!" ، "هولا!")في شاشة الهدف، حدد الأشكال على علامة التبويب إدراج، ثم حدد سهم "السابق".
قم بتعيين خاصية OnSelect الخاصة بالسهم للخلف إلى هذه الخاصية.
التنقل (المصدر ، ScreenTransition.Fade)من شاشة المصدر، اضغط على F5، ثم حدد زر أي من اللغتين.
في شاشة الهدف، تظهر التسمية باللغة التي تقابل الزر الذي حددته.
حدد سهم للخلف للرجوع إلى شاشة المصدر، ثم حدد الزر للغة الأخرى.
في شاشة الهدف، تظهر التسمية باللغة التي تقابل الزر الذي حددته.
اضغط على Esc للعودة إلى مساحة العمل الافتراضية.
مثال 2 خطوة بخطوة
- افتح تطبيق اللوحة حيث تريد استخدام هذه الصيغة.
- أضف شاشة فارغة جديدة بتحديد شاشة جديدة من شريط الأوامر.
- أضف زرًا، وقم بتعيين خاصية OnSelect الخاصة به إلى هذه الصيغة:
UpdateContext( { Name: "Lily", Score: 10 } )