GridView中利用隐藏的TemplateFied来进行数据访问
点击次数:35 次 发布日期:2008-11-26 12:37:33 作者:源代码网
|
源代码网推荐 源代码网推荐 <asp:TemplateField Visible="False"> 源代码网推荐 <ItemTemplate> 源代码网推荐 <asp:Literal id="litUserName" runat="Server" Text="<%#Eval("UserName")%>"/> 源代码网推荐 </ItemTemplate> 源代码网推荐 </asp:TemplateField> 源代码网推荐 源代码网推荐 //后台实现 源代码网推荐 源代码网推荐 String userName = ((Literal)GridView1.SelectedRow.FindControl("litUserName")).Text; 源代码网推荐 GridView的AutoGenerateSelectButton属性可以直接使表格实现选择, 如果不想多增加一列选择列, 我们可以利用TemplateField实现GridView的选择. 源代码网推荐 源代码网推荐 ASP.NET代码如下: 源代码网推荐 源代码网推荐 <asp:BoundField DataField="ObjectID" HeaderText="ID"/> 源代码网推荐 <asp:TemplateField> 源代码网推荐 <HeaderTemplate> 源代码网推荐 Name 源代码网推荐 </HeaderTemplate> 源代码网推荐 <ItemTemplate> 源代码网推荐 <asp:LinkButton id="lbName" runat="Server" CommandName="Select"> 源代码网推荐 <%#Eval("Name")%> 源代码网推荐 </asp:LinkButton> 源代码网推荐 </ItemTemplate> 源代码网推荐 </asp:TemplateField> 源代码网推荐 <asp:BoundField DataField="Status" HeaderText="Status"/> 源代码网推荐 同时要给GridView增加两个事件处理RowCreated, RowCommand 源代码网推荐 //RowCreated事件处理 源代码网推荐 void GridView1_RowCreated(object sender, GridViewRowEventArgs e) 源代码网推荐 { 源代码网推荐 if (e.Row.RowType == DataControlRowType.DataRow) 源代码网推荐 { ((LinkButton)e.Row.FindControl("lbName")).CommandArgument = e.Row.RowIndex.ToString(); 源代码网推荐 } 源代码网推荐 } 源代码网推荐 //RowCommand事件处理 源代码网推荐 void GridView1_RowCommand(object source, System.Web.UI.WebControls.GridViewCommandEventArgs e) 源代码网推荐 { 源代码网推荐 GridView1.SelectedIndex = int.Parse(e.CommandArgument.ToString()); 源代码网推荐 } 源代码网推荐 源代码网推荐 这样在点击名称时就可以同时进行选择,不必再利用选择列. 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
