彻底解决VB.NET窗体继承相关问题

开发 后端
VB.NET窗体继承首先要选择一个合乎规则的基窗体。那么在这里将会对这一操作方法进行一个详细的介绍,希望对大家有所帮助。

VB.NET中对于窗体的处理方式有很多种,比如在对无规则窗体的操作方法等等。那么我们就可以通过这篇文章介绍的有关VB.NET窗体继承方式来对窗体的处理进行一个深入的研究,加什么我们对这方面的认知程度。

1、创建一个基窗体Form1,在窗体中放入三个TextBox,为别为TextBox1 TextBox2 TextBox3

2、为TextBox1增加KeyDown事件(当在TextBox1中按下ENTER键时,自动跳至TextBox2 ),代码如下:

  1. Private Sub TextBox1_KeyDown  
  2. (ByVal sender As Object, ByVal   
  3. e As System.Windows.Forms.  
  4. KeyEventArgs) Handles   
  5. TextBox1.KeyDown     
  6. If e.KeyCode = Keys.Enter   
  7. Then TextBox2.Focus()     
  8. End Sub 

3、添加VB.NET窗体继承,选择Form1为基窗体,这样就创建了一个继承窗体。只是此时窗体内的控件不能做修改(属性/事件)

4、如果希望将继承窗体中TextBox1的KeyDown事件修改,需要将基窗体中TextBox1中KeyDown事件修改为:

  1. Public Overridable Sub TextBox1_KeyDown
    (ByVal sender As Object, ByVal e 
    As System.Windows.Forms.KeyEventArgs) 
    Handles TextBox1.KeyDown  
  2. If e.KeyCode = Keys.Enter Then 
    TextBox2.Focus()  
  3. End Sub 

注意:此处将原来的“Private ” 修改为“Public Overridable”

而后下面的代码复制到VB.NET窗体继承中即可:

  1. Public Overrides Sub TextBox1_
    KeyDown(ByVal sender As Object, 
    ByVal e As System.Windows.
    Forms.KeyEventArgs) Handles 
    TextBox1.KeyDown  
  2. If e.KeyCode = Keys.Enter 
    Then TextBox3.Focus()  
  3. End Sub 

5、此时继承窗体中的TextBox1控件的属性栏为灰色(即不能修改),如需要做控件属性做修改操作,请修改基窗体中的代码。#t#

在基窗体From1代码[Windows 窗体设计器生成的代码] 部分,找到

  1. Friend WithEvents TextBox1 
    As System.Windows.Forms.TextBox 

将“Friend”修改为 “Public ”即可

6、VB.NET窗体继承中需要注意的是:

在设计时,当生成包含基窗体的项目时,对基窗体外观所做的更改(属性的设置或控件的增减)将在继承的窗体上反映。仅将更改保存到基窗体是不够的。若要生成项目,请从“生成”菜单选择“生成”。

责任编辑:曹凯 来源: 博客园
相关推荐

2010-01-08 14:07:47

VB.NET窗体传值

2010-01-20 14:52:21

VB.NET修改数据窗

2009-11-03 17:31:01

VB.NET窗体

2009-10-14 13:56:05

VB.NET数据窗体

2010-01-13 09:31:39

VB.NET窗体打印

2009-10-16 09:35:24

VB.NET制作透明窗

2010-01-07 17:10:01

VB.NET控件数组问

2009-10-14 15:20:21

VB.NET窗体指针

2010-01-11 15:12:30

VB.NET特殊窗体

2009-10-09 16:54:03

VB.NET窗体

2009-10-14 15:34:29

VB.NET窗体编程模

2009-10-19 08:55:22

VB.NET多重继承

2010-01-21 16:45:00

VB.NET继承规则

2009-10-26 17:53:50

VB.NET新窗体

2010-01-12 13:54:12

VB.NET MDI子

2009-10-14 14:50:16

VB6.0VB.NET

2010-01-12 17:54:42

VB.NET Dlli

2009-11-10 15:07:11

VB.NET窗体

2010-01-13 15:52:59

VB.NET浮动窗体

2009-11-03 17:35:05

VB.NET窗体透明度
点赞
收藏

51CTO技术栈公众号