以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]在没有什么方法来判断某种控件是否具有某个属性? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=42273) |
-- 作者:loongtai -- 发布时间:2013/11/7 14:15:00 -- [求助]在没有什么方法来判断某种控件是否具有某个属性? 如题,不同的控件除了通用属性外,各自均有各自不同的属性参数。有没有什么方法或语句来判断某个控件是否具有某个属性?如判断textbox是否具有allowedit属性? |
-- 作者:Bin -- 发布时间:2013/11/7 14:19:00 -- 你的需求是什么? 为什么要这么判断呢? |
-- 作者:loongtai -- 发布时间:2013/11/7 14:35:00 -- 对于一个窗口,不同角色的人使用的时候可允许编辑的控件是不同的。当控件数量较多或是种类较杂时,我不想一个个地去设置哪些控件的allowedit=true,这样比较麻烦。我的想法是将可允许编辑的控件名称放到一个集合里,通过遍历控件,同时判断控件的名称是否在这个集合里,从而决定allowedit属性的设置。 Select Case e.Form.text Case "查询" For Each ctl As winform.control In e.Form.controls If lst1.contains(ctl.name) Then ctl.enabled=True ElseIf lst2.contains(ctl.name) Then ctl.allowedit=True ‘allowedit 不属于通用属性,所以想在这之前加一个判断语句:如果控件ctl具有allowedit属性,则 ctl.allowedit=true Else ctl.enabled=False ctl.allowedit=False End If Next
case else
…… End Select |
-- 作者:Bin -- 发布时间:2013/11/7 14:38:00 -- 不可用通常都是直接设置 Enabled 属性 所有控件都有这个属性的. |
-- 作者:loongtai -- 发布时间:2013/11/7 14:42:00 -- enabled属性是共有属性,因此无须判断,但allowedit就不是了,所以想通过遍历控件的方式来设置这个属性,那就需要先判断遍历的控件是否具有allowedit 属性 |
-- 作者:Bin -- 发布时间:2013/11/7 14:43:00 -- 除开表控件,还有别的控件有这个属性吗? 你直接判断是否表控件不就可以了? |