.Net将LinkBut​​ton添加到用户控件中的占位符

时间:2012-05-03 15:13:51

标签: .net user-controls linkbutton

我想为Web应用程序中的各种母版页创建一个公共标头用户控件。标题由母版共享,并具有常见项目,如徽标,导航和动态帐户按钮,例如“我的帐户”和“注销”。

我正在向表单添加动态链接按钮,但我想将它们移动到占位符位置。

问题在于,当我将其添加到占位符时,用户控件会收到错误,“'LinkBut​​ton'必须放在带有runat = server的表单标记内”。

uc_header.ascx.cs

LinkButton signout = new LinkButton();
signout.Text = "Sign-Out";
signout.ID = "SignOutLink";
signout.Click += new EventHandler(SignOutLink_Click);
//adding it to the form works but positions it at the bottom
this.Page.Form.Controls.Add(signout);
//I get an error when I try to add it to the placeholder 
SignOutHolder.Controls.Add(signout);

uc_header.ascx(例如简化)

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="uc_header.ascx.cs" 
Inherits="Site.Masters.uc_header" %>

<asp:PlaceHolder ID="SignOutHolder" runat="server"></asp:PlaceHolder>

如何使用.Net?

向占位符添加或定位“注销”按钮

我的目标是创建一种注销所有页面并仅管理一个公共头文件的方法。

1 个答案:

答案 0 :(得分:1)

听起来用户控件放在表单之外。如指示的错误消息,请检查母版页并确保用户控件位于表单内。