Use dados no repetidor quando a caixa de seleção estiver verificada em ASP.NET

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

  •  22-09-2019
  •  | 
  •  

Pergunta

Eu tenho um repetidor para mostrar meus dados. Este repetidor mostrando 2 campo que um de Feild é o controle da caixa de seleção e outro é uma obra.

Agora, como posso entender o texto da fatura quando a caixa de seleção é verificada?

Quero ver o texto da Lable em Erry Row que as caixas de seleção são verificações.

como eu faço?

Eu uso o linqtosql para obter e definir dados do banco de dados

Foi útil?

Solução

Página...

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

Código por trás...

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...
             }
        }

Outras dicas

No postback, você precisa percorrer todas as fileiras do seu repetidor e pegar o controle da caixa de seleção. Em seguida, você pode acessar suas propriedades. Verificou e .Text. Se for. Verifiquei, adicione -o a uma lista ou matriz. Eu posso elaborar se necessário ..

<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>

E codifique por trás quando você atribui seus dados

   rptX.DataSource = SomeIEnumerableFromLinq; // which has a bool field called IsChecked
   rptX.DataBind();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top