كيفية الحصول على مؤشر إلى imagebutton الديناميكي في إعادة النشر وحة اياكس

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

سؤال

وأنا أكتب على imagebutton إلى خلية الجدول في صف جديد عندما يقوم مستخدم بتحديد عنصر في القائمة:

ImageButton imgbtnRemove = new ImageButton();
imgbtnRemove.ID = "uxStandardLetterDeleteImage_" + items.letterName;
imgbtnRemove.CommandName = "uxStandardLetterDeleteImage_" + items.letterName;
imgbtnRemove.ImageUrl = items.remove;
imgStatus.AlternateText = "Remove";
tRow.Cells[3].Controls.Add(imgbtnRemove);

عند النقر فوق imagebutton جديد، وأنا لا يمكن أن يبدو للحصول على مؤشر إلى ذلك. أرى أنه في حالة Page_PreRender، حيث كنت أيضا تحميل الجدول على كل إعادة النشر.

string returnData = Request.Form.ToString();

ولكن بالتكرار من خلال النموذج تسيطر الصور:

if (c is System.Web.UI.WebControls.Button ||
c is System.Web.UI.WebControls.ImageButton)

ولا العثور عليه. I يمكن العثور عليه لو أنني وضعت يدويا في:

imgbtnRemove.Click += new System.Web.UI.ImageClickEventHandler(this.ButtonClick);

وفي Page_Load ثم الاستيلاء عليها في الحدث انقر فوق:

switch (((System.Web.UI.WebControls.ImageButton)sender).CommandName)
...

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

وشكرا مقدما ...

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

المحلول

إذا كنت تقوم بإنشاء التحكم الديناميكي خلال مرحلة التعامل مع الحدث من صفحة دورة حياة (على سبيل المثال، في حالة العنصر المحدد)، ثم ستزول السيطرة على إعادة نشر المقبل.

في أجل التحكم الديناميكي ليتم تسجيلهم حالة العرض، لديهم ليتم إنشاؤه في المرحلة الأولية من مراحل دورة حياة الحدث.

وأيضا، ويقول لك كنت بالتكرار من خلال وضع ضوابط للنموذج ... عندما تقوم بإضافة imagebutton إلى خلايا الجدول. هل متكرر تنازلي في التسلسل الهرمي التحكم للبحث عن imagebutton؟

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