سؤال

لدي .NET repeater التحكم data-bound إلى قائمة.كجزء من هو مكرر Item Collection, لدي "إزالة زر" أنه فعال يزيل هذا الحالية القائمة عنصر.

يعمل هذا في التعليمات البرمجية-خلف أنني يمكن أن أنجح في إزالة عنصر من datasource من مكرر.

هذه هي مشكلتي : عندما كنت إعادة تحديث datasource و الاتصال MyRepeater.DataBind() مرة أخرى ، مكرر واجهة لا تحديث مع البند إزالتها.

أنا أبحث عن هذا الحدث أساسا رسم أو تحديث مكرر استنادا إلى قائمة محدثة.شكرا على أي مؤشرات أو أمثلة.

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

المحلول

وتحتاج إلى استدعاء الأسلوب "DataBind عناصر" على مصدر البيانات الخاص بك، <م> ثم دعوة "DataBind عناصر" على السيطرة مكرر الخاصة بك.

نصائح أخرى

هل الرضاعة مصدر البيانات منتعشة؟

إذا كنت تقوم بإعداد مصدر البيانات في التعليمات البرمجية الخلفية، تحتاج إلى تعيين مع البيانات المحدثة ثم استدعاء DataBind عناصر الأسلوب.

وجريت إلى شيء من هذا القبيل مع تحكم مكرر ومصدر DataTable و.

ولم يكن هناك طريقة تحديث في DataTable و، ولكن الدعوة DataTable.EnableDynamicData (تشير typeof (DataTable و)) على تحميل الصفحة الأولي حل المشكلة.

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

وأنا وضعت "EnableViewState" إلى خطأ في الإرسال وxmlDataSource، ومجموعة "EnableCaching" على xmlDataSource إلى خطأ أيضا. I تعيين الخاصية بيانات xmlDataSource، ودعا DataBind عناصر لxmlDataSource، تعيين الخاصية DataSourceID للمكرر، ثم دعا DataBind عناصر للمكرر. ربما كان ذلك مبالغة ... لكنه يعمل. ربما هذا سوف يساعد.

وUPDATE: لقد وجدت أنه من خلال وضع EnableViewState إلى خطأ في جهاز التحكم مكرر، فإن بلدي الحدث ItemCommand يتم إطلاق. ولكن أعتقد أنك تحتاج فقط لضبط EnableViewState / EnableCaching إلى خطأ لمصدر البيانات ... لقد عدت لإعداد EnableViewState إلى True للمكرر والآن يبدو كل شيء جيدا.

مما اضطر Databind يتم عادة حيث التلقائي DataBind يتم في عرض مسبق هذا الحدث.

عادة إذا كنت لم أزل في الحدث انقر فوق ، مكرر يجب تحديث في حد ذاته منذ تلقائيا في عرض مسبق ، ويسيطر على الصفحة DataBind().هنا هو ما doc microsoft يقول :

مسبق :قبل هذا الحدث يحدث كل البيانات منضم التحكم التي DataSourceID يتم تعيين الخاصية المكالمات DataBind.

المصدر

لذلك ربما كنت المتضررة الخاص بكالبند كود.DataSource = قائمة ، ولكن MS يوحي به الخاص بكالبند كود.DataSourceID = قائمة.ID, أو شيء من هذا القبيل.

آمل أن يساعد

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