在vb.net中继承文本框时出错
我正在做一个任务,创建一个用户控件,继承一个只允许大写字母的文本框。我还在用它。下面是我一直工作到现在的代码在vb.net中继承文本框时出错,vb.net,Vb.net,我正在做一个任务,创建一个用户控件,继承一个只允许大写字母的文本框。我还在用它。下面是我一直工作到现在的代码 Imports System.ComponentModel Imports System.Windows.Controls Partial Public Class textboxupper_uc Inherits TextBox Dim strUpperText As String Sub New() InitializeComponent()
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
该行继承TextBox给出错误,因为为类“textboxupper_uc”指定的“基类”TextBox“不能与其其他部分类型之一的基类“用户控件”不同。”您需要了解用户控件和自定义控件之间的区别。如果要继承
TextBox
类,则这是一个自定义控件。用户控件实际上是继承UserControl
的类
如果将用户控件添加到项目中,则有两个包含分部类的代码文件。设计器代码文件包含继承UserControl
,这就是您收到错误消息的原因。您的类不能同时继承UserControl
和TextBox
实际上,您并不需要用户控件,因此请从解决方案资源管理器中删除该项。如果需要自定义控件,则应向项目中添加类项,而不是用户控件。在单个代码文件中的类定义中,您可以添加
Inherits TextBox
,然后就可以开始了。鉴于这是一个作业,我想您必须按照它所说的去做。不过,您可以简单地将标准文本框的CharacterCasing
属性设置为大写
,然后键入的任何内容都将以大写显示。