我正在创建一个新面板..
public class LicensingPanel : Panel
{
private LinkButton licenseButton;
...
}
然后我在代码中将控件添加到Controls属性,其中一个是LinkButton。
我希望能够在我的页面代码后面执行以下操作。
protected override void CreateChildControls()
{
Controls.Add(new LicensingPanel(this));
base.CreateChildControls();
}
但我收到此错误消息:
'LinkButton'类型的控件'ctl03'必须放在带有runat = server的表单标签内。在System.Web.UI.Page.VerifyRenderingInServerForm(控制控件)
该页面是一个带有母版页的SharePoint页面,它有一个带有runat = server的Form标签。
非常感谢任何帮助!
最诚挚的问候,
菲尔
答案 0 :(得分:4)
任何包含MasterPage的页面,无论是否在SharePoint中,都是内容页面。这些页面仅支持内容控件中包含的内容。不支持尝试直接向页面添加HTML标记或ASP.NET控件。
答案 1 :(得分:0)
页面上的哪个位置是您对LicensingPanel类型的控制?此控件需要位于表单标记内。
答案 2 :(得分:0)
我认为你应该告诉我们你想要用你的代码存档的内容。 你想在哪里添加你的控件?
答案 3 :(得分:0)
我认为您需要先完成一些步骤才能在MOSS 2007环境中使用某个控件:
FOR DLL:<%@ Register TagPrefix =“customcontrolname”Namespace =“MyCustomControl”Assembly =“MyCustomControl,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 123456789abcdefg”%>
FOR ASCX:<%@ Register Src =“〜/ Controls / MyCustomControl.ascx”TagName =“MyCustomControl”TagPrefix =“customcontrolname”%>