我在Gridview中声明了Linkbutton控件,但在后面的代码中我无法访问它。下面是我的aspx页面代码。
<%@ Page="" Language="C#" AutoEventWireup="true" MasterPageFile="~/MainMaster.Master"
CodeBehind="Page.aspx.cs" Inherits="IntakeLibrary.Page" %>
<%@ Register="" Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<asp:UpdatePanel ID="updatePanel" runat="server">
<contenttemplate>
<asp:GridView ID="grdView" runat="server">
<Columns>
<asp:TemplateField HeaderText="Text">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server">LinkButton</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</contenttemplate>
</asp:UpdatePanel>
</asp:Content>
以下是我的代码隐藏代码。
protected void Page_Load(object sender, EventArgs e)
{
LinkButton1.Text = "Test";
}
以下是我得到的错误
当前上下文中不存在名称“LinkButton1”
答案 0 :(得分:3)
您的网页上没有LinkButton
- 您的模板中LinkButton
的一列ItemTemplate
中有一个GridView
UpdatePanel
。在您能够引用LinkButton
本身之前,您需要覆盖所有这些图层。
答案 1 :(得分:1)
您使用的是错误的方法,正确的方法是在按钮控件标签本身中指定文本。此按钮位于gridview内部,因此将重复此按钮。你不能参考假设有一个属性的10个渲染按钮吗?您必须循环并在行数据绑定事件上更改其文本。
答案 2 :(得分:0)
您可能必须使用DataGrid_RowDataBound事件处理程序并以正确的模板类型获取控件的句柄,然后在传递给事件处理程序的项目上对链接按钮执行查找控制。我很快就会得到一个代码示例。