模板控制 - 开始和结束标记之间不允许使用内容

D.F*_*est 0 c# asp.net controls

我正在尝试运行MSDN提供的模板化用户控件示例.代码如下:

所以根据MSDN,这应该实现如下:

<%@ Register Assembly="MyAssembly" Namespace="MyAssembly.Controls" TagPrefix="abs" %>
<abs:TemplatedFirstControl id = "First"  runat=server
                           Text= "The time on the server is "  >
      <FirstTemplate>
          <h3><font face="Verdana" color = "red">
                 <%# Container.Text %> <%# Container.DateTime %>
              </font>
          </h3>
      </FirstTemplate>      
    </abs:TemplatedFirstControl>
Run Code Online (Sandbox Code Playgroud)

设计者抱怨在开始和结束标记之间不允许内容,TemplatedFirstControl并且FirstTemplate不支持.那么缺少什么?我逐字复制了MSDN的代码

MSDN文章:http://msdn.microsoft.com/en-us/library/aa720695%28v=VS.71%29.aspx

小智 5

对于遇到相同问题的任何人,我发现将以下属性添加到FirstTemplate属性可以解决我的问题:

[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
[PersistenceMode(PersistenceMode.InnerProperty)]
public ITemplate FirstTemplate 
{
    get
    {
        return firstTemplate;
    }
    set
    {
        firstTemplate = value;
    }
}
Run Code Online (Sandbox Code Playgroud)