在vb.net中创建用户控件组件

用户控件与VisualBasic提供的控件类似,例如TextBox或Button,但您可以使用自己的代码使自己的控件执行任何操作。把它们想象成带有自定义方法和属性的标准控件的“捆绑包”。...

用户控件与VisualBasic提供的控件类似,例如TextBox或Button,但您可以使用自己的代码使自己的控件执行任何操作。把它们想象成带有自定义方法和属性的标准控件的“捆绑包”。

Boy student programming at computer in dark classroom

每当您有可能在多个地方使用的控件组时,考虑用户控件。请注意,您也可以创建web用户控件,但它们与web自定义控件不同;本文仅介绍Windows用户控件的创建。

更详细地说,用户控件是一个VB.NET类。该类继承自Framework UserControl类。UserControl类为控件提供了所需的基本函数,因此可以将其视为内置控件。用户控件还有一个可视化界面,非常类似于在VB.NET中设计的VB.NET窗体。

四功能计算器控制

为了演示一个用户控件,我们将创建我们自己的四功能计算器控件(看起来就是这样),您可以将其拖放到项目中的窗体上。如果您有一个金融应用程序,其中有一个自定义计算器是很方便的,那么您可以将自己的代码添加到这个应用程序中,并像在项目中使用工具箱控件一样使用它。

使用您自己的计算器控件,您可以添加自动输入公司标准(如所需回报率)的键,或者将公司徽标添加到计算器中。

创建用户控件

创建用户控件的第一步是编写一个标准的Windows应用程序,它可以满足您的需要。虽然还有一些额外的步骤,但通常作为标准Windows应用程序比作为用户控件更容易对控件进行编程,因为它更容易调试。

应用程序运行后,可以将代码复制到用户控件类,并将用户控件构建为DLL文件。这些基本步骤在所有版本中都是相同的,因为底层技术是相同的,但在VB.NET版本中,确切的过程略有不同。

使用不同的vb.net版本

如果您使用的是VB.NET 1.X标准版,则会出现一个小问题。用户控件必须创建为DLL才能在其他项目中使用,此版本不会“开箱即用”地创建DLL库。这会带来很多麻烦,但您可以使用本文介绍的技术来了解如何解决此问题。

使用更高级的版本,创建一个新的Windows控件库。按照此链接查看VB.NET 1.X对话框。

从VB主菜单中,单击项目,然后添加用户控件。这为您提供了一个表单设计环境,该环境与用于构建标准Windows应用程序的环境几乎相同。

  • 为控件添加组件和代码,并自定义所需的属性。您可以从已调试的标准Windows应用程序复制和粘贴。事实上,CalcPad控件的代码(下面将对此进行详细介绍)是在没有任何更改的情况下复制的。
  • 构建解决方案以获取控件的DLL文件。记住在构建用于生产之前将配置更改为Release。
  • 要将控件移动到工具箱,请在工具箱上单击鼠标右键,然后选择“添加/删除项…”。。。
  • 使用.NET Framework组件选项卡,浏览到组件的DLL(可能位于Windows控件库解决方案的bin文件夹中)。选择DLL文件后,单击“打开”将控件移动到工具箱,然后选择“确定”。请参见VB.NET 1.1工具箱中CalcPad的此屏幕截图。

要签出您的工作,可以关闭Windows控件库解决方案并打开标准Windows应用程序解决方案。拖放新的CalcPad控件并运行项目。此图显示它的行为与Windows计算器类似,但它是项目中的控件。

这并不是将控件转移到其他人的生产中所需的全部操作,但这是另一个主题!

在VB.NET2005中构建用户控件的过程几乎与1.X相同。最大的区别是,不是右键单击工具箱并选择添加/删除项,而是通过从“工具”菜单中选择“选择工具箱项”来添加控件;过程的其余部分是相同的。

下面是在VB.NET2005中以表单形式运行的相同组件(实际上,使用Visual Studio转换向导直接从VB.NET1.1转换而来)。

同样,将此控制转移到生产中可能是一个复杂的过程。通常,这意味着将其安装在GAC或全局程序集缓存中。

  • 发表于 2021-09-23 00:44
  • 阅读 ( 170 )
  • 分类:数学

你可能感兴趣的文章

如何在microsoft excel中创建检查表

...入在microsoftexcel中变得轻而易举。下面是如何在电子表格中创建一个清单,并使它看起来像你自己的清单。 为什么是检查表?您可以使用清单来跟踪旅行要打包的物品、公司的产品、节日礼物清单、每月账单或跟踪任务。通过一...

  • 发布于 2021-04-01 00:30
  • 阅读 ( 245 )

功能(function)和vb程序(procedure in vb)的区别

...还将值返回给调用代码。 程序员可以在模块、类或结构中创建函数。默认情况下,函数是公共的。因此,可以从应用程序中可以访问已定义的类、结构或模块的任何位置调用它。此外,函数接受变量、常量或表达式等参数。调...

  • 发布于 2021-07-01 18:59
  • 阅读 ( 279 )

asp公司(asp)和aspx公司(aspx)的区别

...包含静态(X)HTML标记。它还包含定义服务器端Web控件和用户控件的标记。这是开发人员放置网页的所有rc内容的地方。 在ASP.netframework2.0中,引入了一种新的代码隐藏模型。这允许静态文本保留在.aspx页上,而动态代码保留在.asp...

  • 发布于 2021-07-13 06:14
  • 阅读 ( 157 )

asp公司(asp)和c级#(c#)的区别

...包含静态(X)HTML标记。它还包含定义服务器端Web控件和用户控件的标记。这是开发人员放置网页的所有rc内容的地方。 在ASP.netframework2.0中,引入了一种新的代码隐藏模型。这允许静态文本保留在.aspx页上,而动态代码保留在.asp...

  • 发布于 2021-07-13 06:14
  • 阅读 ( 162 )

asp公司(asp)和asp.net(asp.net)的区别

...建和运行动态的、交互式的Web服务器应用程序。它还允许用户结合HTML页面、脚本命令和COM组件来创建交互式Web页面和强大的基于Web的应用程序。这也使得开发和修改上述Web应用程序变得更加容易。 在最初发布之后,已经有两个...

  • 发布于 2021-07-13 06:18
  • 阅读 ( 166 )

vb语言(vb)和运动模拟(vb.net)的区别

...符号指令代码。它是由Microsoft创建的。它提供了一个图形用户界面GUI,在这个GUI的帮助下,开发人员可以轻松地将各种对象拖放到程序中。它还提供了手动编写程序代码的选项。VB是为一个简单而有能力的软件开发而设计的。VB...

  • 发布于 2021-07-13 21:15
  • 阅读 ( 253 )

vb.net中的强制转换和数据类型转换

...为整数类型,但可以使用DirectCast将表单类型强制转换为控件类型。 让我们检查一下微软的DirectCast示例的性能。使用上面显示的相同代码模板,替换为。。。 c = DirectCast(f, System.Windows.Forms.Control) ... 与CType和TryCast的类似替...

  • 发布于 2021-09-07 01:21
  • 阅读 ( 224 )

在dbgrid中创建下拉列表

想成为有史以来最好的数据编辑网格吗?下面是构建用户界面以编辑DBGrid中的查找字段的说明。具体来说,我们将研究如何将DBLookupComboBox放置到DBGrid的单元格中。 这将调用来自数据源的信息,这些信息将用于填充下拉框。 ...

  • 发布于 2021-09-10 22:15
  • 阅读 ( 150 )

visual basic术语表

... Basic程序中操作对象时调用的代码块。操作可以由程序的用户通过GUI、程序或某些其他过程(如时间间隔到期)来完成。例如,大多数表单对象都有一个单击事件。formForm1的Click事件过程将由名称Form1\u Click()标识。 表达式,...

  • 发布于 2021-09-10 22:25
  • 阅读 ( 238 )

什么是vb.net资源及其使用方法(vb.net resources and how)

...的唯一方法,但它有真正的优势。例如,可以在PictureBox控件中包含位图,或使用mciSendString Win32 API。 Microsoft将资源定义为“与应用程序一起逻辑部署的任何不可执行的数据” 管理项目中资源文件的最简单方法是在项目属性中...

  • 发布于 2021-09-11 23:50
  • 阅读 ( 181 )
东方罗伯特
东方罗伯特

0 篇文章

相关推荐