2.4 TreeList控件
样式一:
代码一:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;
namespace DXApplication_1
{
public partial class TreeListForm : DevExpress.XtraEditors.XtraForm
{
public TreeListForm()
{
InitializeComponent();
}
private void TreeListForm_Load(object sender, EventArgs e)
{
Encapsulation_CreateDataTable_1();
}
public DataTable Encapsulation_CreateDataTable_1()
{
DataTable dataTable = new DataTable();
// 此属性设为true 每个节点前会自动增加一个check框
treeList1.OptionsView.ShowCheckBoxes = true;
// 此属性设为true 点击复选框时,可设置为半选状态
treeList1.OptionsBehavior.AllowIndeterminateCheckState = true;
dataTable.Columns.Add("ID");
dataTable.Columns.Add("ParentID");
dataTable.Columns.Add("AnimeName");
DataRow row1 = dataTable.NewRow();
row1["ID"] = 1;
row1["ParentID"] = 1;
row1["AnimeName"] = "日语";
dataTable.Rows.Add(row1);
DataRow row2 = dataTable.NewRow();
row2["ID"] = 2;
row2["ParentID"] = 1;
row2["AnimeName"] = "未闻花名";
dataTable.Rows.Add(row2);
DataRow row3 = dataTable.NewRow();
row3["ID"] = 3;
row3["ParentID"] = 1;
row3["AnimeName"] = "千与千寻";
dataTable.Rows.Add(row3);
DataRow row4 = dataTable.NewRow();
row4["ID"] = 4;
row4["ParentID"] = 4;
row4["AnimeName"] = "英语";
dataTable.Rows.Add(row4);
DataRow row5 = dataTable.NewRow();
row5["ID"] = 5;
row5["ParentID"] = 4;
row5["AnimeName"] = "这个杀手不太冷";
dataTable.Rows.Add(row5);
treeList1.DataSource = dataTable;
treeList1.KeyFieldName = "ID";
treeList1.ParentFieldName = "ParentID";
treeList1.Columns[0].Caption = "Tree_1";
return dataTable;
}
}
}
样式二:
代码二:
public DataTable Encapsulation_CreateDataTable_2()
{
DataTable dataTable = new DataTable();
// 此属性设为true 每个节点前会自动增加一个check框
treeList1.OptionsView.ShowCheckBoxes = true;
// 此属性设为true 点击复选框时,可设置为半选状态
treeList1.OptionsBehavior.AllowIndeterminateCheckState = true;
// 不显示的列
dataTable.Columns.Add("ID");
dataTable.Columns.Add("ParentID");
// 显示的列
dataTable.Columns.Add("AnimeName");
dataTable.Columns.Add("AnimeYear");
dataTable.Columns.Add("AnimeActress");
DataRow row1 = dataTable.NewRow();
row1["ID"] = 1;
row1["ParentID"] = 1;
row1["AnimeName"] = "日语";
dataTable.Rows.Add(row1);
DataRow row2 = dataTable.NewRow();
row2["ID"] = 2;
row2["ParentID"] = 1;
row2["AnimeName"] = "未闻