VB.NET在窗体上添加任意动态控件

VB.NET 章鱼哥 自定义控件的建立和使用 VB..NET 是支持用户自定义控件的,这个方法特别好用。当然如果想建成比较复杂的控件还需要很多知识,本文只是演示一遍如何建立简单的自定义控件,以及如何在新的项目中引用这个控件(就像标准控件一样拖动)     ㈠新建一个Windows 窗体控件库,命名为“自定义控件1” ㈡ 向空白的控件中拖放标准控件(这里拖放了CheckBox和TextBox控件,更改了控件的背景色) ㈢ 向控件添 阅读详情
Public Class textboxarray
    Inherits System.Collections.CollectionBase
    Private ReadOnly HostForm As System.Windows.Forms.Form
    Public Function Addtextbox() As System.Windows.Forms.TextBox
        '为textbox类建立新的实例
        Dim atextbox As New System.Windows.Forms.TextBox
        ' 将该按钮添加到集合的内部列表
        Me.List.Add(atextbox)
        '把控件集合中的按钮添加到被HostForm字段引用的窗体
        HostForm.Controls.Add(atextbox)
        ' 设置该按钮对象的初始属性
        atextbox.Top = Count * 25
        atextbox.Left = 150
        atextbox.Tag = Me.Count
        atextbox.Text = ""  'Me.Count.ToString
        AddHandler atextbox.Click, AddressOf ClickHandler
        Return atextbox
    End Function
    Public Sub New(ByVal host As System.Windows.Forms.Form)
        HostForm = host
        Me.Addtextbox()
    End Sub
    Default Public ReadOnly Property Item(ByVal Index As Integer) As _
      System.Windows.Forms.TextBox
        Get
            Return CType(Me.List.Item(Index), System.Windows.Forms.TextBox)
        End Get
    End Property
    Public Sub Remove()
        ' 检查以确保有按钮可以删除
        If Me.Count >= 1 Then
            ' 从主窗体上的控件集合的数组按钮数组中删除最后一个
            ' 注意在访问数组时使用了默认属性
            HostForm.Controls.Remove(Me(Me.Count - 1))
            Me.List.RemoveAt(Me.Count - 1)
        End If
    End Sub
    Public Sub ClickHandler(ByVal sender As Object, ByVal e As _
   System.EventArgs)
        'MessageBox.Show("you have clicked textbox " & CType(CType(sender, _
        'System.Windows.Forms.textbox).Tag, String))
    End Sub
End Class 
vb.net动态生成控件并排版 '''     ''' 动态生成控件并调整控件位置;     '''     Public Sub CreateControl(ByVal TextBoxTagContent As Dictionary(Of String, Integer), ByVal TextBoxType As List(Of Boolean))         Dim keyvalue As KeyValue 阅读详情

相关推荐

VB.NET中动态添加控件数组

VB.NET中的控件数组?        项目的需求又变了,我必须要在我的窗口上根据读取的文件不同添加不同的checkbox,我本以为vb.net和vb一样一定会有控件数组呢,结果网上的高手们都说vb.net是没有控件数组这个概念的。不过可以自己写一个类来实现控件数组的功能。他们都有现成的代码,我拿来用了,很好用。这里我就只简单说一下我在用这个类的过程中出现的问题。应该比较值得提一下。  

piaopiaoer的专栏 4397

VB.NET实现动态加载控件数组

vb.net中没有控件数组,它也不主张用控件数组,因为它对内存的开销非常大。控件数组问题在.NET中完全有其它方法代替。如果一定要用     for   i   as   integer   to   20             dim   txt   as   new   textbox             txt.name="txt"   &   i             me.con

ssihc0的专栏 1856

VB.NET中Load事件问题解决方案

通过以上方案,可解决大多数与 Form.Load 相关的问题。若问题依然存在,建议检查窗体生命周期顺序或提供更具体的错误信息以便进一步排查。

2501_91207543的博客 1240

vb.net 教程 3-13 动态创建控件1

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 前面介绍的都是通过拖拽或者双击工具箱中的控件后,在窗体上创建控件。 如果不采用以上方法是不是就不能创建和使用控件呢? 肯定可以在代码中创建的。 基本步骤 1、定义一个窗体级别的变量,类型为需要的控件类型。 如果还要使用该控件的事件,请使用以下语句: Dim WithEve...

学习微软 .net 技术开发 2462

.net动态控件的使用(listview ,treeview,tabControl)

对于控件中显示的数据可能是不固定的。如果固定,数据发生了变化,又要重新设计,这样浪费成本,资源。 所以有用代码操作控件,自由度,可控度高。 1,树控件 //把 tv 作为全局变量 , 这是对动态控件取值的一种方式 TreeView tv = new TreeView(); private void Form1_Load(object sender, EventAr...

while(True): print('adorable') 581

VB初级窗体设计实战:简单界面与按钮事件源码解析

通过继承现有控件类,可创建具有预设属性的“模板控件”。' 设置默认样式Me.Font = New Font("微软雅黑", 10, FontStyle.Regular)End SubEnd Class此类控件在实例化时自动应用统一风格,减少重复设置。在窗体中使用:.Text = "自定义按钮",

weixin_42502089的博客 1063

vb.net动态控件数组

vb.net里面的动态控件数组的问题,这个动态控件数组在vb里面easy到极致,可是在vb.net里面却有点让人摸不着头脑。其实也很简单,因为vb.net和vb不同拉,来看看vb.net的动态控件数组如何实现。 1、在form的头部定义一个公共的ArrayList类型的变量         Dim m_items As New ArrayList2、在程序中动态生成控件  

optop的专栏 6616

VB6.0老项目控件实战:ReSize.ocx与imgctls.ocx注册、自适应与打包

ActiveX控件是VB6.0遗留系统中最常见的组件形式,其注册与分发机制直接影响程序在新环境下的运行稳定性。本文从控件基础原理出发,剖析ReSize.ocx和imgctls.ocx在窗体自适应与图片工具栏中的核心作用,并系统讲解regsvr32注册、SysWOW64路径区别、部件引用等工程实践。针对高频出现的80040154错误,梳理了依赖缺失、运行库不完整等典型原因,提供Inno Setup打包与免注册清单的替代方案。结合嵌套容器缩放、动态控件处理等真实踩坑案例,帮助开发者快速定位和解决VB6.0控件层

weixin_34072296的博客 321

asp.net控件页面交互_ASP.NET Web窗体用户控件的基本交互

asp.net控件页面交互I saw a recent question regarding .NET - Render User Control Logo on Postback and decided to write an article to address the issue stated in that question. To add further, I would like to...

cunchi8090的博客 1338

使用DotNetBar2实现WinForm动态控件大小调整

WinForm是.NET框架中用于构建Windows桌面应用程序的强大工具。它提供了一个丰富的用户界面库,允许开发者通过拖放控件来快速设计出美观且功能强大的用户界面。然而,有时默认控件和布局并不满足特定的业务需求。在这种情况下,开发者必须深入到WinForm的应用层面,进行自定义用户界面的开发。在现代软件开发中,用户界面的直观性和易用性对于提升用户满意度至关重要。自定义用户界面开发不仅涉及到外观的定制,更包括了对用户体验(UX)的深层次优化。

weixin_30633869的博客 680

vb.net像VB6一样使用控件数组

vb.net像VB6一样使用控件数组 像VB6一样用来保存对像的index值

[VB.NET]如何取得动态控件中的值?

如何取得动态控件中的值?我通过如下方法在界面上循环显示一组textbox 列举其中一个 Dim textbox As New TextBox textbox.Name = "test " + cstr(i) i是循环变量 然后我想在其他方法中取得这些test的textbox中的值 这里的代码该怎么写? 比如我要取test1中的value,直接写test1.text肯定不行,用CType好像

VB.NET学习网-VB.NET实例、VB.NET教程、VB.NET源码下载 1029

vs2008 动态添加控件数组并获取所点击的控件属性

一个在vs2008下 动态添加控件数组并获取所点击的控件属性(vb编程)的源码

VB的内存释放(鄙视那些说内存泄露的人,适用VB6,.NET)

很多人都发现过,VB使用webbrowser等网络控件或其他一些大型控件时,占用的内存资源会不停的上涨,直到机器支持不了,运行崩溃。很多自以为是的高手要么说VB内存管理的问题,要么IE内核存在泄露。其实不然,只是了解的不够而已。 在VB中,一个对象(包括控件)使用以后,可以用set s=nothing来销毁(销毁后不立即释放内存的,要等待windows的内存机制来释放)。 但我们可以用Empt

11级风的博客 1万+

利用Ghidra与SVD插件实现STM32固件深度逆向分析

本文详细介绍了如何利用Ghidra逆向工程框架结合SVD插件,实现对STM32固件(.bin文件)的深度逆向分析。通过加载描述芯片外设寄存器的SVD文件,Ghidra能将晦涩的硬件地址操作转换为可读的寄存器符号,极大提升了对嵌入式固件中通信协议、安全校验等关键逻辑的分析效率。文章涵盖了从Java环境搭建、工具配置到实战逆向解析的完整流程。

peach的博客 944

Python 爬虫:获取网页数据的 5 种方法

requests:适用于简单的静态网页抓取,易于使用。requestslxml:适合需要高效解析大规模网页内容的情况,支持 XPath 和 CSS 选择器。Selenium:适用于动态网页(JavaScript 渲染)的抓取,模拟浏览器行为获取动态数据。Scrapy:强大的爬虫框架,适合大规模的网页抓取任务,支持异步请求和高级功能。PyQuery:基于 jQuery 语法,适合快速开发,提供简洁的 CSS 选择器语法。

想看什么文章都可以私信给我,综合性博客。 5514

创建动态数据输入用户界面 (转)

注:是VB.net语言解说!下载实例 简介 当创建数据驱动的Web站点时,Web开发人员遇到的最常见的任务之一就是创建数据输入窗体。数据输入窗体是为系统用户提供数据输入方法的Web页。创建特定数据输入窗体的任务通常应该先从需求分析入手,即,明确指出需要从用户收集何种信息。需求确定之后,下一步是设计数据输入Web窗体,包括创建图形用户界面以及编写根据用户输入更新数据库的代码。 当数...

weixin_30662109的博客 290

使用podman 容器化安装DIFY

本文阐述了使用podman容器化安装DIFY的过程

wengad的博客 1901

vb/vb.net开发精粹(20)

excel的VBA中SQL语句的写法 vb 实现rdp远程连接(高手进来) 屎优快云服务器 好像已经十一了,散分,散分 一个简单送分的问题 关于Function VB + ACCESS 的数据库插入记录问题 控制台程序对UNICODE的支持狠尴尬呀 E8财务管理软件增强版V7.11 E8进销存财务管理软件增强版V9.11 发个自写自用的网页登录管理工具(3.0) E8仓库管

师以长技以制夷 1673

MATLAB下pdf文件操作读取示例

当遇到一些需要大量数据的项目,数据的读取与储存显得尤为重要。怎样把数据从其他格式的文件中读取,并运用到程序中是很多时候我们要解决的问题。对于平常的.txt,和.xlsx文件,MATLAB有对应的函数帮助读取,但是遇到pdf文件时MATLAB很难读取内容。本文以一个操作实例提供了一个从pdf文件中读取数据的方法。

UESTC 五高考3模拟的博客 6558

PyTorch实战:手把手教你用QAT量化感知训练拯救模型精度(附避坑指南)

本文详细介绍了如何使用PyTorch进行QAT量化感知训练,以提升模型在边缘设备上的推理精度。通过核心原理讲解、实战代码示例和避坑指南,帮助开发者掌握从环境配置、模型训练到边缘部署的全流程,有效解决传统量化方法导致的精度损失问题。

c7d8e的博客 329

vb.net 教程 3-13 动态创建控件2

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 上一节讲了设计时创建控件,实际设计时候可以很方便地选择创建控件的事件代码, 本节讲一下不使用withevents,如何在运行时创建一个带有事件的控件。 主要用到 AddHandler 语句: AddHandler event, AddressOf eventhandler eve...

学习微软 .net 技术开发 1489

从零开始:小鼠Bulk RNA-seq全流程实战指南

本文提供了一份详尽的小鼠Bulk RNA-seq全流程实战指南,涵盖从软件环境搭建、原始数据质控与清洗、序列比对、基因定量到下游差异表达分析与功能富集。内容面向生物信息学新手,通过清晰的代码示例和步骤解析,帮助读者系统掌握Bulk RNA-seq数据分析的核心技能,并产出可靠的生物学洞见。

lake5的博客 716
上一篇: windows服务创建过程
下一篇: VB.NET中实现不同窗体间控件的访问
Chendy
博客等级 码龄23年 67粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值