如何从 Control 继承,而不是 UserControl?

How to inherit from Control, rather than UserControl?(如何从 Control 继承,而不是 UserControl?)

本文介绍了如何从 Control 继承,而不是 UserControl?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个继承自 UserControl 的 ASP.net 控件:

I have an ASP.net control that inherits from UserControl:

文件 1:

public partial class Controls_AllocationDuplicate : System.Web.UI.UserControl

文件 2:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="AllocationDuplicate.ascx.cs" Inherits="Controls_AllocationDuplicate" %>

我需要控件从 Control,而不是 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 会给出一个编译错误:

When i do this, Visual Studio gives a compile error:

确保此代码文件中定义的类与继承"属性匹配,并且它扩展了正确的基类(例如 Page 或 UserControl).

Make sure that the class defined in this code file matches the 'inherits' attribute, and that it extends the correct base class (e.g. Page or UserControl).

我怎样才能让我的 control 从 Control 而不是 UserControl 继承?

How can I have my control inherit from Control rather than UserControl?

这个问题是 Stackoverflow 系列中的一个,模板化用户控件":

This question is one in the ongoing Stackoverflow series, "Templating user controls":

  • 如何向用户控件添加模板?
  • 如何继承自Control,而不是继承自UserControl?
  • UserControl 有 IsPostBack,但 Control 没有
  • UserControl 没有名为 ContentTemplate 的公共属性
  • 如何从 web.config 指定 CodeFileBaseClass?

推荐答案

您尝试制作自定义控件而不是用户控件,在这种情况下您不能使用 ascx 文件来保存您的设计,但需要务实地设计它们.

You try to make a custom control and not a user control in this case you can't use ascx file to hold your design but need to design them pragmatically.

这篇关于如何从 Control 继承,而不是 UserControl?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何从 Control 继承,而不是 UserControl?