在vb.net中继承文本框时出错

时间:2018-04-23 07:01:13

标签: vb.net

我正在进行一项任务,创建一个继承文本框的用户控件,该文本框只允许使用大写字母。我还在使用它。下面是我到目前为止工作的代码。

Imports System.ComponentModel
Imports System.Windows.Controls

Partial Public Class textboxupper_uc

 Inherits TextBox

    Dim strUpperText As String

    Sub New()
        InitializeComponent()
    End Sub

    Public Property uppText As String
        Get
            Return strUpperText
        End Get
        Set(value As String)
            strUpperText = value.ToUpper
        End Set
    End Property
End Class

行Inherits TextBox给出错误" Base class" TextBox"为课程指定#textboxupper_uc'不能与基类'用户控制'其中一种部分类型。"

1 个答案:

答案 0 :(得分:1)

您需要了解用户控件和自定义控件之间的区别。如果要继承TextBox类,那么这是一个自定义控件。用户控件实际上是一个继承UserControl的类。

如果您向项目添加了用户控件,那么您有两个包含分部类的代码文件。设计器代码文件包含Inherits UserControl,这就是您收到该错误消息的原因。您的班级不能同时继承UserControlTextBox

您实际上并不想要用户控件,因此请从解决方案资源管理器中删除该项。您需要自定义控件,您应该将类​​项添加到项目而不是用户控件。在单个代码文件的类定义中,您可以添加Inherits TextBox,然后就可以了。