ASP.NET DetailsView EmptyDataTemplate 按钮处理程序
ASP.NET DetailsView EmptyDataTemplate button handler
我在DetailsView
的EmptyDataTemplate
中放了一个button
。如果我双击它,它将在代码隐藏中为我设置一个处理程序。
有没有一种无需双击设计器中的按钮即可设置处理程序的方法。
在代码隐藏中,我无权访问按钮 ID 以便我将处理程序附加到它?
所以我手动将 OnClick="btnNew_Click"
属性放在标记中。有没有办法在代码隐藏中做到这一点?
<asp:DetailsView ID="DetailsView2" runat="server" AutoGenerateRows="False" DataKeyNames="Id" DataSourceID="ObjectDataSource3" Height="50px" Width="50%">
<EmptyDataTemplate>
<asp:LinkButton ID="lnkNewNote" OnClick="btnNew_Click" runat="server" CausesValidation="True" CommandName="New" Text="New"></asp:LinkButton>
</EmptyDataTemplate>
您可以使用 FindContol
在 EmptyDataTemplate
中找到 LinkButton 并添加一个 Click 事件。
LinkButton lb = DetailsView2.FindControl("lnkNewNote") as LinkButton;
lb.Click += btnNew_Click;
我在DetailsView
的EmptyDataTemplate
中放了一个button
。如果我双击它,它将在代码隐藏中为我设置一个处理程序。
有没有一种无需双击设计器中的按钮即可设置处理程序的方法。
在代码隐藏中,我无权访问按钮 ID 以便我将处理程序附加到它?
所以我手动将 OnClick="btnNew_Click"
属性放在标记中。有没有办法在代码隐藏中做到这一点?
<asp:DetailsView ID="DetailsView2" runat="server" AutoGenerateRows="False" DataKeyNames="Id" DataSourceID="ObjectDataSource3" Height="50px" Width="50%">
<EmptyDataTemplate>
<asp:LinkButton ID="lnkNewNote" OnClick="btnNew_Click" runat="server" CausesValidation="True" CommandName="New" Text="New"></asp:LinkButton>
</EmptyDataTemplate>
您可以使用 FindContol
在 EmptyDataTemplate
中找到 LinkButton 并添加一个 Click 事件。
LinkButton lb = DetailsView2.FindControl("lnkNewNote") as LinkButton;
lb.Click += btnNew_Click;