正文
vb.net添加用户控件 vb程序设计中怎样添加控件
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
vb.net自定义控件问题
首先,你已经完成的步骤是:
1.新建一个用户控件[注意,用户控件(UserControl)不是自定义控件(CustomControl)]
2.给用户控件起个名字(我在此处起名叫 RadioList)
3.在用户控件上画一个 GroupBox,命名为 RadioGroup,
并将其 Dock 属性设置为 Fill
然后,你需要做的是动态增减控件。
如果你以前用过 VB 6,你可能会想到控件数组,
但在此处,你可以直接增删控件。
具体实现如下:
4.在 GroupBox 里画一个 FlowLayoutPanel,命名为 RadioPanel,
将其 AutoScroll 属性设置为 True,即自动显示滚动条,
并设置其 FlowDirection 属性(例如设置为 TopDown)
这样就省去了手动调整 RadioButton 位置的麻烦
5.实现选项的动态增减(以下只是我的思路,你可以发挥一下)
(十分简洁,注释除外):
''' summary
''' 创建一个新的 RadioButton。
''' /summary
Private Function CreateRadio() As RadioButton
Dim NewRadio As New RadioButton
components.Add(NewRadio)
'components 字段由控件设计器自动创建,
'此代码目的是使控件在销毁(Dispose)时能自动销毁 RadioButton
'详情参见 RadioList.Designer.vb
NewRadio.Parent = RadioPanel
'设置容器
AddHandler NewRadio.CheckedChanged, AddressOf RadioButtons_CheckedChanged
'设置事件处理程序
Return NewRadio
End Function
''' summary
''' 移除已存在的 RadioButton。
''' /summary
Private Sub RemoveRadio(ByVal dest As RadioButton)
components.Remove(dest)
dest.Dispose()
End Sub
'无中生有的 RadioButton 的事件处理程序
Private Sub RadioButtons_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
'在此处设置选中项的属性,通过 sender 来确定不同的 OptionButton
'你可以通过将 OptionButton 放在一个列表,
'如 List(Of OptionButton) 中来像数组一样维护选项的次序
'注意,此处需要判断 sender 的 Checked 属性是否为 True
'因为 Changed 是“改变”,而不是“选中”
'例如:
If DirectCast(sender, RadioButton).Checked Then
SelectedIndex = ...
End If
End Sub
vb.net如何创建无界面的用户控件
控件不一定有界面,类也不一定有界面。
以Visual Studio 2012为例
把你的控件封装到类里面,生成exe或dll,在要调用的项目中,进入工具箱,右键任意项,选择项,在.Net Framework组件中浏览到生成的exe或dll,在上面列表中相应的内容,勾选,确定
vb.net用户控件问题 2
属性修改后没有任何设置,当然不会改变,改改
Set(ByVal value As String)
Text_1 = value
Me.Label1.Text = Text_1
End Set
Set(ByVal value As String)
Text_2 = value
Me.Label2.Text = Text_2
End Set
如何在vb.net里面动态添加控件
Private WithEvents NewTextBox As TextBox
'通过使用WithEvents关键字声明一个对象变量为新vb.net添加用户控件的命令按钮
Private Sub Command1_Click()
If NewTextBox Is Nothing Then
Set NewTextBox = Controls.Add("VB.TextBox", "cmdNew", Form1)
NewTextBox.Move 200, 200
NewTextBox.Width = Form1.Width - 450
NewTextBox.Height = Form1.Height - 1400
NewTextBox.Visible = True
End If
End Sub
Private Sub Command2_Click()
If NewTextBox Is Nothing Then
Exit Sub
Else
Controls.Remove NewTextBox
Set NewTextBox = Nothing
End If
End Sub
vb.net 自定义用户控件如何放到工具箱上
建一个自定义vb.net添加用户控件的Web控件MyContro的步骤:
1)引用
using System;
using System.IO;
using System.Drawing;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
2)保证MyContro是从WebControl继承的。
public class MyControl:WebControl
3)重写下面两个函数,这是必须的
protected override void Render(HtmlTextWriter writer)
{
this.CreateChildControls();
base.Render (writer);
}
protected override void CreateChildControls()
{
// 清除现有的子控件及其 ViewState
this.Controls.Clear();
this.ClearChildViewState();
// 生成控件树
// 生成环境表格(一行,两个单元格)
Table myTable = new Table();
//build the table row生成表格中的行
TableRow row = new TableRow();
myTable.Rows.Add(row);
// 生成单元格
TableCell myCell = new TableCell();
//用来生成链接按钮导航条的代码。每个按钮都显示有一个 Webdings 字符,可以根据需//禁用,并被绑定到内部的 Click 事件处理程序。
LinkButton myLinkButton = new LinkButton();
myLinkButton.ID = "MyLinkButton";
myLinkButton.Click += new EventHandler(myLinkButton_Click);
myLinkButton.Font.Name = "宋体";
myLinkButton.ToolTip = "好玄啊vb.net添加用户控件!";
myLinkButton.Text = "请点我";
myCell.Controls.Add(myLinkButton);
row.Cells.Add(myCell);
Controls.Add(t);
}
4)自定义的事件的方法
private void myLinkButton_Click(object sender,System.EventArgs e)
{
Page.Response.Write("想干点什么就写点什么吧,就这么简单!");
}
5)编译一下,然后点工具—》添加/移除工具箱项
浏览到vb.net添加用户控件你编译生成的dll
6)使用
你好,我想请教一下vb.net中怎么调用用户控件,谢谢!
与使用System.Windows.Forms命名空间中的控件的用法没有区别。
首先添加引用。
其次导入(Imports)命名空间。
接着就可以使用了:
1、要使用用户控件的实例成员,就先创建一个用户控件的实例,再通过实例名.实例成员名访问;
2、要使用用户控件的共享(Shared)成员,通过用户控件类名.共享成员名访问。
如果你问的是怎样创建自己的用户控件类:
1、继承类System.Windows.Forms.UserControl;
2、继承任何一个已经存在的控件类(只要这个控件类不是NotInheritable的就行)。
关于vb.net添加用户控件和vb程序设计中怎样添加控件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。