ما نوع التعليمات البرمجية التي يمكننا كتابتها في حدث page_prerender فقط؟

StackOverflow https://stackoverflow.com/questions/3717554

سؤال

أنا google حول page_prerender أنه كيف يمكننا استخدام page_prerender بدلاً من page_load أو ما يمكن أن يكون السيناريو الذي لم نتمكن من استخدام page_load وعلي استخدام page_prerender ولكن في كل مكان أجده ،

"The point at which the objects are prerendered is the last time changes to the objects can be saved or persisted to viewstate. This makes the PreRender step a good place to make final modifications, such as changing properties of controls or changing Control Tree structure, without having to worry about ASP.NET making changes to objects based off of database calls or viewstate updates. After the PreRender phase those changes to objects are locked in and can no longer be saved to the page viewstate. The PreRender step can be overridden using OnPreRender".

لكنني لم أستطع أن أفهم ما هو نوع التغييرات التي لم نتمكن من القيام بها في page_load وعلي القيام بها في Prerender.

كما أعلم أنه في page_preinit ، يمكننا إنشاء عناصر تحكم ديناميكية ، أو تغيير أو تعيين ماستر أو موضوع لا يمكننا في page_load أو بعد init.

ولكن ماذا عن page_prerender ما هي الأشياء التي يمكننا القيام بها فقط في page_prerender.

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

المحلول

يتم تشغيل بعض الأحداث بعد حدث Page_Load. البعض واضح بينما البعض الآخر ليس كذلك. وذلك لأن هذه الأحداث لا يمكن أن تؤدي إلا بعد الترفيه (أو بالأحرى بعد التحميل). على سبيل المثال ، إذا كنت ترغب في تسجيل جزء من البرنامج النصي للعميل ، فقد يكون المكان الجيد هو page_render. أو الطريقة التي يمكن أن تتصل بها عن قصد في page_load للتحقق من صحة عناصر التحكم يمكن فهمها بالفعل في مراحل التجسيد.

وبالمثل ، هناك بعض الآخرين الذين يعملون فقط عندما تكون عناصر التحكم المرتبطة بها جاهزة لتقديمها (عولجت بالكامل لمتصفح المستخدم).

نصائح أخرى

إنها ليست مسألة ما تستطيع فقط افعل في page_prerender ، قد تكون هناك تبعيات بين عناصر التحكم التي تصبح واضحة فقط بعد معالجة جميع الأحداث في page_load.

يمكن استخدام حدث page_prerender لتحديد التغييرات في عرض HTML لعناصر التحكم الخاصة بك. أحد الاختلافات المهمة بين الحمل و prerender هو أن عمليات التحميل قبل إطلاق أحداث التحكم الخاصة بك ويتم استدعاء Prerender بعد أحداث التحكم. لذلك ، إذا كنت ترغب في تغيير HTML على أساس رمز أحداث التحكم الخاصة بك ، فيمكنك القيام بذلك في حدث Prerender.

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

يمكن أيضًا استخدامه إذا كنت تستخدم عناصر تحكم مخصصة/مستخدم حيث يتم تقديم عنصر التحكم من قبلك.

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