我需要扩展Repeater控件,以便在没有数据显示时,它将不会显示。 所以我将类库项目添加到我的解决方案中,并将此类添加到该类库项目中。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.UI.WebControls;
using System.Web.UI;
namespace FRMControls
{
public class CustomRepeater:Repeater
{
public ITemplate EmptyDataTemplate { get; set; }
protected override void OnDataBinding(EventArgs e)
{
base.OnDataBinding(e);
if (this.Items.Count == 0)
{
EmptyDataTemplate.InstantiateIn(this);
}
}
}
}
写完之后,我添加了参考使用这个库。 我将控件添加到aspx页面
<%@ Register TagPrefix="asp" Namespace="FRMControls" Assembly="FRMControls" %>
但是我无法看到并使用那种控制 我做错了什么?
答案 0 :(得分:1)
检查:
您是否在ASP.NET项目中添加了对类库的引用?
我从未尝试过重复使用“asp”XML命名空间。我不建议使用它,因为您将来可以与Microsoft命名冲突,因此,我建议您使用自定义的,例如“frm”。由于我从未尝试过重复使用“asp”命名空间,也许这就是你的控制没有被列入intellisense菜单的原因。
您的类库目标框架版本是否与ASP.NET应用程序相同?如果您使用的是3.5,则必须使用.NET Framework 3.5或4.0,依此类推。
试一试,如果没有解决你的问题,请注释掉。