TreeList复选框选中节点_第1页
TreeList复选框选中节点_第2页
TreeList复选框选中节点_第3页
TreeList复选框选中节点_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 查看文章 TreeList 复选框选中节点2009-06-04 17:321 /treeLArea    :   TreeList; 2 /imglChecked :   ImageList;3 / 4 /5 6 /指定StateImageList7 this.treelArea.StateImageList = this.imglChecked;8 9 /treelArea的GetStateImage事件处理程序10 private void treelArea_GetStateImage(objec

2、t sender, DevExpress.XtraTreeList.GetStateImageEventArgs e)11 12     try13      14           CheckState checkState = (CheckState)e.Node.GetValue("checkState");15        &

3、#160;  e.NodeImageIndex = (checkState = CheckState.Unchecked) ? 0 : (checkState = CheckState.Checked ? 1 : 2);16       17      catch(Exception)18      19 20 21 22 23 24 /鼠标单击事件处理25 private void treelArea_MouseDown(object send

4、er, MouseEventArgs e)26 27      if (e.Button=MouseButtons.Left)28       29           TreeListHitInfo hitInfo = (sender as TreeList).CalcHitInfo(new Point(e.X,e.Y);30       

5、60;  if (hitInfo.HitInfoType=HitInfoType.StateImage)31           32               SetCheckValue(hitInfo.Node);           

6、0;      33           34       35 36 37 38 /设置节点状态39     private void SetCheckValue(TreeListNode node)40       41        

7、   CheckState checkState = CheckState.Unchecked;42          if (CheckState)node.GetValue("checkState")=CheckState.Unchecked|(CheckState)node.GetValue("checkState")=CheckState.Indeterminate)43      

8、60;    44               checkState = CheckState.Checked;45           46           node.TreeList.FocusedNode = node;47   

9、        node.TreeList.BeginUpdate();48           node.SetValue("checkState",checkState);49           SetParentCheckState(node,checkState);50     

10、      SetchildCheckState(node, checkState);51           node.TreeList.EndUpdate();     52       53 54 /递归设置父节点55      private void SetParentCheckState(Tree

11、ListNode node,CheckState checkState)56       57           TreeListNode parentNode = node.ParentNode;58          bool style = false;59         

12、60;if (parentNode!=null)60                        61              foreach (TreeListNode   n in parentNode.Nodes)62

13、              63                  if (!checkState.Equals(CheckState)n.GetValue("checkState")64        

14、60;          65                       style = true;66                 

15、     break;67                   68               69             &

16、#160; parentNode.SetValue("checkState", style ? CheckState.Indeterminate : checkState);70               SetParentCheckState(parentNode,checkState);71           72    

17、;  73       74 75 /递归设置子节点76      private void SetchildCheckState(TreeListNode node, CheckState checkState)77       78          if (node.HasChildren)79    

18、       80              foreach (TreeListNode n in node.Nodes)81               82                   n.SetValue("checkState",checkState);83                   SetchildCheckState(n,checkState);84          &

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论