首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

请问自定义组合控件

2013-01-06 
请教自定义组合控件怎样才能让自定义组合控件在IDE编辑环境下选择它里面的单个控件啊?为了大家能明白我的

请教自定义组合控件
怎样才能让自定义组合控件在IDE编辑环境下选择它里面的单个控件啊?为了大家能明白我的意思,将问题详细描述如下:
我尝试着把label和textbox控件放到usercontrol里生成一个组合控件,编译生成dll后新建一个项目测试,却发现通过添加到form以后,组合控件里的label和textbox根本就没法选中,更不要说修改label.text属性了,请问这是怎么回事,如何解决?
[解决办法]
无法这样的,你可以再你的自定义控件中。自己写:


Public ReadOnly Property LabelShow As Label
    Get
        Return Me.Label1
    End Get
End Property

Public ReadOnly Property TextBoxShow As TextBox
    Get
        Return Me.TextBox1
    End Get
End Property

[解决办法]
既然是控件,就应该封装好。

你可以使用属性

Public Property LabelText As String
    Get
        Return Label1.Text
    End Get
    Set
        Label1.Text = Value
    End Set
End Property


再编译,你就可以选中这个自定义控件,并且通过更改“LabelText”属性修改它了。
[解决办法]
引用:
感谢wuyazhe和caozhy分别说出了修改子控件的一种方法。
但是,如果用wuyazhe据说的方法实现对子控件属性的修改,又不想让显示该子控件所有的属性(也就是说,部分属性不允许手工修改),应该怎么做呢?
感谢大家的帮助,还希望大家能再次伸出援助之手,在线等。


可以使用
Private Shadows 需屏蔽的属性名称
来屏蔽指定的属性

热点排行