以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]Tree View 设置ReadOnly问题。  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=44909)

--  作者:ndxfke
--  发布时间:2014/1/11 15:42:00
--  [求助]Tree View 设置ReadOnly问题。

 

我通过代码创建一目录树,目录树设置有复选框。

 

想要的效果是:目标树可以展开,但不能选择和取消选择

 

下面是我做的,但始终能选择:

 

AfterLoad

 

Dim TV As WinForm.TreeView = e.Form.Controls("TreeView1")
tv.BuildTree ("表B","权限|模块|窗体")
tv.CheckBoxes = True
tv.ReadOnly = BooleanEnum.True


--  作者:Bin
--  发布时间:2014/1/11 15:45:00
--  
BeforeSelectNode事件中写入代码
e.Cancel=True

--  作者:ndxfke
--  发布时间:2014/1/11 15:45:00
--  
bin,为什么时候呢,求解。
--  作者:ndxfke
--  发布时间:2014/1/11 15:48:00
--  
BeforeSelectNode事件中写入代码
e.Cancel=True

 

 

 

貌似问题依然存在...


--  作者:Bin
--  发布时间:2014/1/11 15:48:00
--  
什么意思?
--  作者:ndxfke
--  发布时间:2014/1/11 15:50:00
--  

意思是,在控件的 BeforeSelectNode 事件,加上 e.cancel = true

 

复择框还是可以选.


--  作者:Bin
--  发布时间:2014/1/11 15:53:00
--  
那只是禁止选中,禁止复选可以在AfterCheckNode 设置e.node.Checked=False

不过不太严谨,如果你不希望勾选复选框,直接设置不要显示复选框不就好了吗?  需要的时候再显示.

--  作者:lsy
--  发布时间:2014/1/11 15:58:00
--  

AfterCheckNode

For Each nd As WinForm.TreeNode In e.Sender.AllNodes
    nd.Checked = False
Next

 


--  作者:ndxfke
--  发布时间:2014/1/13 9:32:00
--  

TKS,

 

解决了。谢谢