1. 程式人生 > >asp.net中GridView內部點選事件判斷是第幾行並獲取row資料

asp.net中GridView內部點選事件判斷是第幾行並獲取row資料

前臺:

 <asp:GridView ID="grid" runat="server" class="com_table" AutoGenerateColumns="False">

 <Columns>

<asp:TemplateField HeaderText="部門名稱">
                <ItemTemplate>
                    <asp:DropDownList ID="ddl_Dept" AutoPostBack="True" OnSelectedIndexChanged="ddl_Dept_SelectedIndexChanged" runat="server">
                    </asp:DropDownList>    
                </ItemTemplate>
 </asp:TemplateField>

  </Columns>

    </asp:GridView>

後臺:

 /// <summary>
/// 選擇部門
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>

  protected void ddl_Dept_SelectedIndexChanged(object sender, EventArgs e)
 {

     DropDownList drd = sender as DropDownList;
            GridView gv = drd.Parent.Parent.Parent.Parent as GridView;
            int n = ((GridViewRow)drd.Parent.Parent).RowIndex;  //獲取第多少行
            var row = gv.Rows[n];   //獲取當前行的rowData

}