您的位置:首页 > 编程语言 > C#

c#中TreeView,ListView,Splitter控件

2013-12-10 14:02 573 查看
TreeView可在Nodes属性中设置,Dock设为Left,放在左边,Dock设为Fill就是填满整个右边,设为Top就是上半边,bottom就是下半边

ListView可在Items属性中设置(节点名称在text中设置),,放在右边,Dock设为Fill就是填满整个右边,设为Top就是上半边,bottom就是下半边

Splitter控件就可以自由调整了

 

checkdlistbox控件在Items设置多行的字符串作为多个选择框,checkedListBox1.CheckedItems.Count获取选择总数,checkedListBox1.CheckedItems[i].ToString()获取每个字符串

 

 

c#中TreeView和ListView的一些用法

 

TreeView

 

TreeNode的Tag可以用来存储一个对象的引用(类似vc里面的SetData方法),可以用来存储相对于这个node的自己所需要的数据

添加首個節點使用TreeView.Nodes添加

 

在TreeView上增加右鍵菜單:

添加一個ConetxMenuStrip控件;

在控件中增加MouseDown Events;

然後在方法中添加代碼:

[csharp]
view plaincopyprint?

private void WorkspaceTreeView_MouseDown(objectsender, MouseEventArgse)  
  
        {  
  
            if(e.Button== MouseButtons.Right)  
  
            {  
  
                PointclickPoint = newPoint(e.X, e.Y);  
  
                TreeNodecurrentSelectedNode = WorkspaceTreeView.GetNodeAt(clickPoint);  
  
                if(null != currentSelectedNode)  
  
                {  
  
                    currentSelectedNode.ContextMenuStrip = WorkspaceContextMenuStrip;  
  
                    WorkspaceTreeView.SelectedNode = currentSelectedNode;  
  
                }  
  
            }  
  
        }  
  
   

private void WorkspaceTreeView_MouseDown(objectsender, MouseEventArgse)

{

if(e.Button== MouseButtons.Right)

{

PointclickPoint = newPoint(e.X, e.Y);

TreeNodecurrentSelectedNode = WorkspaceTreeView.GetNodeAt(clickPoint);

if(null != currentSelectedNode)

{

currentSelectedNode.ContextMenuStrip = WorkspaceContextMenuStrip;

WorkspaceTreeView.SelectedNode = currentSelectedNode;

}

}

}

 

為TreeView添加圖標:

增加一個ImageList控件,可以直接點開小三角,然後選擇choose images加載一些列的圖標(和C++比起來簡直太方便了,哎~ 如果你還在用mfc做界面,哎 ~ );

然後在初始化的地方加入:WorkspaceTreeView.ImageList = WorkspaceTreeImageList;(你自己的控件變量);

使用add方法添加ImageIndex就可以了(小貼士:ImageIndex和SelectedImageIndex最好同時設置一下哦 ~ )。

 

 

ListView

類似下面的控件:

步驟:

添加一個ListView控件;

增加一個ImageList控件,類似TreeView的添加方法,在初始化方法中添加代碼: ListView.SmallImageList = ImageList;

在ListView的屬性中把View屬性設置為Details;

添加Columns可以自己在控件上右键Edit Colmuns;

添加行(有点古怪):

[csharp]
view plaincopyprint?

this.LabelsListView.BeginUpdate();  
  
            for(int i = 0; i < listLabelData.Count; ++i)  
  
            {  
  
                ListViewItemlvi = new ListViewItem();  
  
                lvi.ImageIndex = 0;  
  
                lvi.Text = listLabelData[i].LabelName;  
  
                lvi.SubItems.Add(listLabelData[i].LastAccessed);  
  
                lvi.SubItems.Add(listLabelData[i].Owner);  
  
                LabelsListView.Items.Add(lvi);  
  
            }  
  
            this.LabelsListView.EndUpdate();  

this.LabelsListView.BeginUpdate();

for(int i = 0; i < listLabelData.Count; ++i)

{

ListViewItemlvi = new ListViewItem();

lvi.ImageIndex = 0;

lvi.Text = listLabelData[i].LabelName;

lvi.SubItems.Add(listLabelData[i].LastAccessed);

lvi.SubItems.Add(listLabelData[i].Owner);

LabelsListView.Items.Add(lvi);

}

this.LabelsListView.EndUpdate();


 

http://blog.csdn.net/rekrad/article/details/8474165
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: