[转]Raising An Event From CheckBox In A GridView (GridView中模板表的CheckBox的后台事件处理)
本文转自:http://www.dotnetspider.com/resources/30842-Raising-An-Event-From-CheckBox-In-A-GridView.aspx
原文如下:
Description:
Raising an event from a gridview check box or dropdown list.
In case of Button or Link Button then event raises and RowCommand.
Incase of raising event from a control like Checkbox or RadioButtonor DropDownList or etc Event Bubbling.
Design View:
<asp:GridView ID="GrdQuestions" AutoGenerateColumns="false" runat="server" Width="698px" >
<HeaderStyle HorizontalAlign="Left" CssClass="GridHeader" / >
<RowStyle CssClass="GridRowStyle" HorizontalAlign="Left" / >
<AlternatingRowStyle CssClass="GridAlternateRowStyle" / >
< Columns >
<asp:TemplateField HeaderText="Edit" >
<ItemStyle HorizontalAlign="Center" Width="50px" ></ItemStyle >
<ItemTemplate>
<asp:CheckBox id="chkStatus" AutoPostBack="True" Runat="server" OnCheckedChanged="chkStatus_Changed" ></asp:CheckBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="BatchPriority">
<HeaderStyle Wrap="False">< /HeaderStyle>
<ItemStyle Wrap="False">< /ItemStyle>
<ItemTemplate>
<asp:dropdownlist id="ddlBatchPriorty" runat="server" Width="92px" CssClass="text" ></asp:dropdownlist>
</ItemTemplate>
</asp:TemplateField>
<Columns>
</asp:GridView>
Code Behind:
public void chkStatus_Changed(object sender, System.EventArgs e)
{
//......When GridView Checkbox calls event, then it raises an event.
CheckBox chkbox = (CheckBox)(sender);
//......Sender is converted to checkbox and getting its GridView Row by using chkbox.Parent.Parent.
GridViewRow dg = (GridViewRow)(chkbox.Parent.Parent);
//......GridView Row to find the Control or Text of particular cell.
DropDownList ddl = (DropDownList)(dg.Cells[4].FindControl("ddlBatchPriorty"));
}
posted on 2009-08-13 11:45 freeliver54 阅读(490) 评论(0) 编辑 收藏 举报