当用户单击刷新按钮时,我的网格视图绑定到列表,如下所示:
grv_xyz.DataSource = lstVendorInfo;
grv_zyz.DataBind();我在所有其他TemplateFields之前放置了一个<asp:CommandField HeaderText="Delete" ShowDeleteButton="True" ShowHeader="True" />来显示数据,如下所示
<Columns>
<asp:CommandField HeaderText="Delete" ShowDeleteButton="True" ShowHeader="True" />
<asp:TemplateField HeaderText="Vendor ID">
<ItemStyle Width="10%" BorderColor="#efefef" BorderWidth="1px"/>
<ItemTemplate>
<asp:HyperLink NavigateUrl="#" ID="abcID" runat="server" Text='<%# Bind("abc") %>'></asp:HyperLink>
</ItemTemplate>
<HeaderStyle BorderColor="#efefef" />
</asp:TemplateField>
</Columns>问题出在cell上。下面的Text属性为""。
protected void grv_Vendor_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
ShowResult();
TableCell cell = grv_Vendor.Rows[e.RowIndex].Cells[4];
}如何在RowDeleting事件中提取TemplateField中的值?
非常感谢。
发布于 2009-10-17 10:01:43
TemplateField包含控件,因此应该通过这些控件访问值。例如,如果您在TemplateField中有一个标签,并且您想要访问它的值,您应该这样写:
Label yourLabel = e.Item.FindControl("YourLabelID") as Label;
string val = yourLabel.Text;https://stackoverflow.com/questions/1581750
复制相似问题