长期以来,VB中的Resize命令一直是困扰编程人员的一个因素,虽然有许多人提出了解决方案,但效果并不理想。这也是大多数的VB.NET控制包含有Anchor和Dock属性的原因,这二个属性将有助于解决对象的大小和位置问题。
我们先来看看Anchor属性,它能够使一个或多个控制边缘与窗体的边缘保持固定的距离。我们来看看下面的例子:
·创建一个新的Windows Application类型的应用程序。
假设你正在创建一个Web应用软件,并希望在窗体的底部放置一个TextBox控制,我们希望它的长度与窗体相适应。
·在窗体中添加一个TextBox控制,如下图所示:

图:Big Changes4
·点击TextBox1,并察看其Anchor属性。
缺省情况下,控制的anchor属性为TopLeft(即窗体的左上角)。换一句话说,它与窗体的左侧和上部保持着一定的距离。

图:Big Changes5
下面我们来改变TextBox1的Anchor属性:
·改变Anchor的属性,不选择Top,而选择Left、Right和Bottom。
Anchor属性将变化为BottomLeftRight,意味着TextBox1将与窗体的底部、左侧和右侧保持着同样的距离。
·按F5键,运行你的应用程序。
·改变窗体的大小。
Dock属性也相当地重要,但它毕竟不是革命性的,它与VB6中控制所拥有的Align属性类似,它使得特定的控制一直在窗体的一边,或者使用Fill选项,覆盖整个窗体。
·在Form1中添加一个新的TextBox控制。
·试验其Dock属性。 继承
在VB.NET中也有继承的概念。在以后的文章中,我还将对真正的代码继承进行专门的讨论。在本篇文章中,我们讨论的是Visual Inheritance(视觉继承),也即一个窗体从主窗体那儿得到了输出布局(甚至是其代码。)。
假设我们有许多通用的控制,例如可能是一个OK按钮、互联网网址链接、窗体背景、用于数据输入的TextBox控制和向导的输出布局等,不论需要使用任何窗体元素,我们都可以通过视觉继承共享它们及其相关的逻辑。
·创建一个新的Windows Application类型的应用程序。
·在Form1中添加一些公共元素。
我添加的公共元素包括anchor属性为BottomRight的LinkLabel、anchor属性为BottomLeft的OK按钮和一个提示我的应用程序名字的Label。添加控制后的窗体应该如下图所示:

图:Big Changes6
在能够继承一个窗体前,必须“建立”它(一种微编译)。
·在Build菜单中选择Build菜单项。 下面我们来继承这一窗体。
·依次点击Project->Add Inherited Form(添加被继承窗体)。
·确保已经选择了Inherited Form(被继承窗体),然后点击OK键。
·在出现的列表中选择Form1并点击OK按钮。

图:Big Changes7
·如果Form2没有自动出现,则在Solution Explorer中双击它。Form2拥有Form1所拥有的所有控制。
·在Form2中添加一些TextBox控制。

图:Big Changes8
下面我们来看看运行时的Form2,不过这样需要改变Project Properties(工程属性):
·在Solution Explorer(方案浏览器)中右击你创建的Windows Application类应用程序。
·从弹出式菜单中选择Properties(属性)。
此时,屏幕上应该显示如下所示的画面。如果不是这样,那可能是你在Solution Explorer中选错了项目。

图:Big Changes9
我们可以在这里改变Assembly名(以前补称作Project名)、版本号、应用程序图标和Startup对象,这才是我们感兴趣的目标。
·将Startup Object改为Form2,点击OK按钮。
现在我们来测试一下继承得到的窗体:
·点击F5键,对应用程序进行测试。
注意观察它们是如何协同作用的。试着改变Form2的大小━━如果已经使用过Form1的Anchor属性,它们对Form2也起同样的作用。如果为Form1编写了代码,这些代码也将自动地被Form2所继承。甚至可以让Form2覆盖掉Form1的一部分功能。例如,尽管其外观是由Form1继承得到的,但OK按钮可以被Form2识别。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




