ASP.NET C#中的自定义控件
我创建了一个简单的自定义控件,它只继承Literal控件,并且没有任何扩展,代码是空的.
命名空间:CustomControls 类名:Literal:System.Web.UI.WebControls.Literal 接下来我要做的是在aspx页面注册这个控件如下: <%@ Register TagPrefix="web" Namespace="CustomControls" %> (我读了几个教程,这是注册它的方法之一,除了web.config等) 毕竟,对我来说没有智慧,更糟糕的是,当我尝试用它中的控件来运行页面时,我得到一个解析错误’unknown server tag:web’. 我使用“创建新项目”而不是新的网站,以防这种信息需要. 什么可能是我的问题? 提前致谢. 解决方法
这是我怎么做,一步一步从没有.这第一个方法使用第二个项目/程序集.对于App_code版本向下滚动.
Web应用程序项目方法 >创建一个新的ASP.Net Web应用程序.记下这个名字,我的名字叫做WebApplication2.如果您已经有一个现有的Web应用程序,这可能是双击项目的属性部分,并检查“组件名称”属性,记下它. namespace CustomControls { public class Literal : System.Web.UI.WebControls.Literal { } } >将以下注册标签添加到aspx页面顶部 <%@ Register assembly =“WebApplication2”namespace =“CustomControls”tagprefix =“web”%> 如果您的程序集名称不同,请在此处更改.我注意到,当我在VB.Net中这样做时,命名空间是WebApplication1.CustomControls,而不是像C#中的CustomControls一样,很奇怪. >将新控件添加到您的页面: < web:Literal ID =“Literal1”runat =“server”Text =“test”/> 分项目方法 >创建一个新的空的网站(ASP.Net). namespace CustomControls { public class Literal : System.Web.UI.WebControls.Literal { } } >将CustomControls项目的引用添加到您的网站. <%@ Register assembly =“CustomControls”namespace =“CustomControls”tagprefix =“web”%> < web:Literal ID =“Literal1”runat =“server”Text =“test”/> 在App_Code方法 >创建一个新的空的网站(ASP.Net). namespace CustomControls { public class Literal2 : System.Web.UI.WebControls.Literal { } } >在aspx页面中注册app_code的程序集/命名空间,将以下行添加到顶部 <%@ Register Namespace =“CustomControls”Assembly =“__ code”tagprefix =“web”%> < web:Literal2 ID =“literal2”runat =“server”Text =“test2”/> 我使用视觉工作室测试了这一切,这一切对我来说都很好. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 从MSDN获取我需要的信息的最快方法是什么?
- .net – 在Map中注入时,StructureMap会警告 – 为什么?
- asp.net – ‘txtName’未声明 由于其保护等级可能无法访问
- asp.net-core – 从appsettings.json获取ConnectionString,
- asp.net-mvc – 在没有模型的情况下手动将验证添加到文本框
- asp.net-mvc – 不要在JSON中序列化Entity Framework类引用
- asp.net – 麻烦与ajax POST调用WCF服务
- ASP.NET会话状态和多个工作进程
- asp.net – 嵌套的用户控件的控件为null
- 将ASP.NET网站转换为原生Android / iOS应用程序