再会,
我有一个gridview,我用一个完美工作的数据表插入数据,放置复选框行时对我来说很复杂,以便用户可以选择他们想要执行管理的行。这是 HTML 代码:
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox ItemStyle-Width="150px" ID="cbSelect" runat="server" AutoPostBack="True" OnCheckedChanged="cbSelect_CheckedChanged" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ItemStyle-Width="150px" ID="cbSelected" runat="server" AutoPostBack="True" OnCheckedChanged="cbSelected_CheckedChanged" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Poliza">
<ItemTemplate>
<asp:Label ID="Poliza" runat="server" Text='<%# Bind("POLIZA") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField ItemStyle-Width="150px" DataField="RAMO"
HeaderText="Ramo" />
<asp:BoundField ItemStyle-Width="150px" DataField="CERTIF"
HeaderText="Certificado" />
<asp:BoundField ItemStyle-Width="150px" DataField="NOMRMO"
HeaderText="Ramo" />
<asp:BoundField ItemStyle-Width="150px" DataField="CIA"
HeaderText="N. Comp" />
<asp:BoundField ItemStyle-Width="150px" DataField="NOMCIA"
HeaderText="Compañia" />
<asp:BoundField ItemStyle-Width="150px" DataField="RIF"
HeaderText="Ident" />
<asp:BoundField ItemStyle-Width="150px" DataField="CCT"
HeaderText="Num" />
</Columns>
</asp:GridView>
并且在后端我有填充gridview的代码,如果选中了一个复选框并且它是空的,那么它可以完美地工作
我的复杂之处在于将所选行传输到另一个网络表单的按钮,因为通常我可以通过“ButtonField”属性“OnSelectedIndexChanged”传递一行,但我如何使用复选框来执行此操作?
我在点击中有这个,但我不知道如何推进:
protected void Button2_Click(object sender, EventArgs e)
{
List<string> test = new List<string>();
foreach (GridViewRow gridViewRow in GridView2.Rows)
{
if (((CheckBox)gridViewRow.FindControl("cbSelected")).Checked)
{
string ejecutivoId = ((Label)gridViewRow.FindControl("Poliza")).Text;
test.Add(ejecutivoId);
}
}
if (test.Count > 0)
{}
谢谢
当您已经拥有其他形式的列表时:
您可以使用Session变量并存储所有选定的策略,并以另一种形式检索所述信息。
在Page_Load事件的另一个表单中,您检索它。