【发布时间】:2012-09-01 15:27:33
【问题描述】:
我有一个继承自 UserControl 的 ASP.net 控件:
文件 1:
public partial class Controls_AllocationDuplicate : System.Web.UI.UserControl
文件 2:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="AllocationDuplicate.ascx.cs" Inherits="Controls_AllocationDuplicate" %>
I need the control to inherit from Control, rather than UserControl:
File.aspx.cs (已更改):
public partial class Controls_AllocationDuplicate : System.Web.UI.Control
File.aspx (未更改):
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="AllocationDuplicate.ascx.cs" Inherits="Controls_AllocationDuplicate" %>
当我这样做时,Visual Studio 会给出一个编译错误:
确保此代码文件中定义的类与“继承”属性相匹配,并且它扩展了正确的基类(例如 Page 或 UserControl)。
我怎样才能让我的控件继承自Control而不是UserControl?
系列
这个问题是 Stackoverflow 系列中的一个,“模板化用户控件”:
【问题讨论】:
-
为什么你需要继承自 Control 而不是 UserControl?这当然是合法的,但是从您提供的链接中,我不明白您在尝试什么。
-
@aquinas:因为
UserControl没有名为ContentTemplate的公共属性 -
啊,它得到了设计师的支持。明白了。是的,它也从来没有为我工作过,但是我在设计器中的唯一一次是当我去“哦,废话!我不小心按了设计器按钮,现在我必须等待 5 分钟。”
标签: asp.net user-controls controls