استخدم البيانات الموجودة في مكرر عندما يتم تسجيل الوصول في ASP.NET

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

  •  22-09-2019
  •  | 
  •  

سؤال

لدي مكرس لإظهار بياناتي. هذا المكرر الذي يظهر 2 حقل أن أحد Feild هو التحكم في مربع الاختيار والآخر هو lable.

الآن ، كيف يمكنني فهم نص Lable عند فحص مربع الاختيار؟

أريد أن أرى نص Lable in Evry Row أن مربعات الاختيار هي checksd.

كيف أفعل؟

يمكنني استخدام LINQTOSQL للحصول على البيانات وتعيين البيانات من قاعدة البيانات

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

المحلول

صفحة...

             <asp:CheckBox ID="chkBoxID" runat="server" OnCommand="doSomething_Checked" CommandArgument="<%# Some Binding Information%>"
                CommandName="NameForArgument">
             </asp:CheckBox>

الكود وراء ...

protected void doSomething_Checked(object sender, CommandEventArgs e) {

                CheckBox ctrl = (CheckBox)sender;
                RepeaterItem rpItem = ctrl.NamingContainer as RepeaterItem;
                if (rpItem != null) {
                    CheckBox chkBox = (LinkButton)rpItem.FindControl("chkBoxID");
                    chkBox.DoSomethingHere...
             }
        }

نصائح أخرى

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

<asp:Repeater ID="rptX" runat="server">
<ItemTemplate>
    <asp:Label ID="lblX" runat="server" Visible='<%# Eval("IsChecked") %>' />
    <asp:CheckBox ID="chkX" runat="server" Checked='<%# Eval("IsChecked") %>' />
</ItemTemplate>
</asp:Repeater>

والرمز وراءك عند تعيين بياناتك

   rptX.DataSource = SomeIEnumerableFromLinq; // which has a bool field called IsChecked
   rptX.DataBind();
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top