【问题标题】:get gridview column and row from itemtemplate checkbox event从 itemtemplate 复选框事件中获取 gridview 列和行
【发布时间】:2015-03-05 20:36:18
【问题描述】:

我有带有 itemTemplate 的 gridview 包含在 onCheckChanged 处触发的复选框。 我想捕捉gridview所在的gridview列和行。

我该怎么做?

public void PM_chkbx_Chacked_Changed(object sender, EventArgs e)
{
     //What to write here?
}

【问题讨论】:

    标签: asp.net events gridview checkbox itemtemplate


    【解决方案1】:

    我在 gridview 中使用了 datakeys 并且能够获取行和特定列。这里 gridview id 是 grdrequestlist

    public void PM_chkbx_Chacked_CheckedChanged(object sender, EventArgs e)
    {
    //here you can get row on whcih you checkbox chnged event called
    
    GridViewRow Row = ((GridViewRow)((Control)sender).Parent.Parent);
    string requestid = grdrequestlist.DataKeys[Row.RowIndex].Value.ToString();
    string cellvalue=Row.Cells[1].Text;
    }
    

    这个gridview的.aspx页面设计在这里你可以在Columns部分添加你的列。

    <asp:GridView ID="grdrequestlist" runat="server" DataKeyNames="RequestId" >
    <Columns>
     <asp:TemplateField HeaderText="Actions" >
                     <ItemTemplate>
     <asp:CheckBox ID="PM_chkbx_Chacked" AutoPostBack="true" runat="server" oncheckedchanged="PM_chkbx_Chacked_CheckedChanged" />
                     </ItemTemplate>
                    </asp:TemplateField>
                        </Columns>
    </asp:GridView>
    

    希望对你有所帮助。

    【讨论】:

    • 谢谢,它帮助我获取了行号和数据键。我还需要获取我检查的 CheckBox 所在的列名。我该怎么做?
    【解决方案2】:

    我找到了解决方案:

    public void PM_chkbx_Chacked_Changed(object sender, EventArgs e)
        {
            GridViewRow gvr = ((GridViewRow)((Control)sender).Parent.Parent);
            int index_row = gvr.RowIndex;
            string role_name = gv_permissions_management.DataKeys[index_row].Value.ToString();
            string fileld_name = ((DataControlFieldCell)((Control)sender).Parent).ContainingField.HeaderText;
            ((DataControlFieldCell)((Control)sender).Parent).BackColor = Color.Red; //Color the Cell
    
         }
    

    【讨论】:

      猜你喜欢
      • 2011-04-25
      • 1970-01-01
      • 2011-09-07
      • 2010-11-23
      • 2020-03-08
      • 1970-01-01
      • 1970-01-01
      • 2017-11-03
      • 2017-10-06
      相关资源
      最近更新 更多