开贴再问:如何让第二个自定义属性根据第一个自定义属性的变化而变化

qiashzhou 2004-12-09 05:27:04
我有个自定义控件,第一个属性是列数,第二个至n个是每列的宽度.如果用户在属性栏里"列数"输入3,下面马上出现3个"第一列的宽度""第二列的宽度""第三列的宽度".如果输入4,就出现4个列宽的属性.这种效果能否实现,我估计挺难,因为标准控件的属性都没有这么搞的.谁能帮我?
...全文
165 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzhjs 2004-12-13
  • 打赏
  • 举报
回复
在属性的set里面写

public property int ColumnNumber
{
Get()
{ ... }
Set()
{ ... }
}
qiashzhou 2004-12-13
  • 打赏
  • 举报
回复
刚刚在网站上看到<System.ComponentModel.BrowsableAttribute(False)>可以指定属性是否显示,但是只能在设计时指定,而不能在运行时(不是程序运行时,而是设置自定义控件的属性时)动态使其隐藏.大家有什么想法, 另开一个线程?
qiashzhou 2004-12-13
  • 打赏
  • 举报
回复
谢谢楼上两位,是在是没辙.如果哪位大哥来说一下这个功能不可能办到我倒也死心了.
mazekui 2004-12-13
  • 打赏
  • 举报
回复
up
BloodPhenix 2004-12-13
  • 打赏
  • 举报
回复
顶死人不偿命~~~
qiashzhou 2004-12-13
  • 打赏
  • 举报
回复
qiashzhou 2004-12-13
  • 打赏
  • 举报
回复
不是这么简单的,不过我用数组属性基本解决了我的问题,很高兴,结贴.谢谢大家!
qiashzhou 2004-12-10
  • 打赏
  • 举报
回复
加了30分,帮忙顶也给分啊.
qiashzhou 2004-12-10
  • 打赏
  • 举报
回复
再顶
qiashzhou 2004-12-10
  • 打赏
  • 举报
回复
首先,目前我需要有这个功能.其次,不一定算是在运行是给类添加属性,只是控制它显示不显示,我可以声明64个属性,但是它可以根据我的需要来决定到底显示多少.我希望一条语句就能实现,比如属性ColNum(),我通过ColNum().Invisible() = False.这种问题网上是找不到答案了,只能求助于各位.谁能给点具体的提示?
qiashzhou 2004-12-10
  • 打赏
  • 举报
回复
吐血再顶,一定要解决呀.
shaqian008 2004-12-10
  • 打赏
  • 举报
回复
up
捏造的信仰 2004-12-10
  • 打赏
  • 举报
回复
难道可以在运行时给类添加属性吗?删除属性呢?
youlongzaitian 2004-12-09
  • 打赏
  • 举报
回复
当然可以,只要事件处理好!
捏造的信仰 2004-12-09
  • 打赏
  • 举报
回复
在下觉得楼主的做法既不现实也不实用。楼主可以看看ToolBar和StatusBar这些控件是怎么做的。
兔子-顾问 2004-12-09
  • 打赏
  • 举报
回复
可以用个数组么?二维数组保存,选择列,就对应的维数。输出宽么,不用重写,引用同一个维数就可以了。
MyNetLand 2004-12-09
  • 打赏
  • 举报
回复
这个问题有点意思。
//不过,我还没有实验过。


//是否可以在第一个属性的Set、Get方法中对存储第二个属性值的变量进行操作。
landlordh 2004-12-09
  • 打赏
  • 举报
回复
当然可以
qiashzhou 2004-12-09
  • 打赏
  • 举报
回复
再顶

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧