シーン
Winフォームのコントロール-DevExpress18ダウンロードと登録をインストールし、VSで使用します。
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100061243
上記のインストールではTreelistはDevExpress社に基づき、そのコントロールを使用していました。
リストは、新しいデータソースを作成し、TreeListに割り当てることができます。
効果
実現
[新しいWinフォームプログラム、およびTreeListをドラッグ
新しいデータソースクラスのTreeNode
使用してシステムを。 使用してSystem.Collections.Genericを。 使用してSystem.Linqのを。 使用してSystem.Textのを。 使用してSystem.Threading.Tasksを。 名前空間DevExpressSimple { クラスのTreeNode { // 标识Idを プライベート 文字列のID。 // 父级节点ID プライベート 文字列PARENTID。 // 节点显示文本 プライベート 文字列nodeText。 公共の 文字列NodeText { 取得 { リターンをnodeText。} セット{nodeText = 値。} } パブリック 文字列ParentIdは { 取得 { 戻りPARENTIDと、} 集合 {PARENTID = 値。} } パブリック 文字列IDが { 取得 { 戻りIDを、} 集合 {ID = 値。} } } }
フォームのLoadイベントにフォームをダブルクリックします。
プライベート 無効 Form1_Load(オブジェクト送信者、EventArgsの電子) { 文字列 keyFieldName = 「イド」。 文字列 parentFieldName = " ParentIdは" ; // 新建リスト数据の源の リスト<のTreeNode>データ= 新しいリスト<のTreeNode> (); data.Add(新しいツリーノード(){ID = " ルート"、ParentIdは= String.Emptyを、NodeText = " 测试1 " })。 data.Add(新しいツリーノード(){ID =" 第一"、ParentIdは= " ルート"、NodeText = " テスト2 " }); // カラム DevExpress.XtraTreeList.Columns.TreeListColumn colNode = 新しい新しいDevExpress.XtraTreeList.Columns.TreeListColumn(); // セット名 colNode.Name = 「名前」; // タイトルセット colNode.Caption = 「タイトル」; // 現在の列のフィールド名のデータソースから割り当てを設定します。 = colNode.FieldName " NodeText "; // 現在の列のリストで、ツリーの表示位置を設定します。 = colNode.VisibleIndex 0 ; //が表示されている colNode.Visible = trueに; // 編集が許可されている場合 colNode.OptionsColumn.AllowEdit = falseに; // モバイル許可するかどうか = colNode.OptionsColumn.AllowMoveをfalseに; // カスタムに移動することができる場合フォーム colNode.OptionsColumn.AllowMoveToCustomizationForm = falseに; // ソートできるようにするかどうかを colNode.OptionsColumn.AllowSortを= falseに; // 固定列幅であれば colNode.OptionsColumn.FixedWidth = falseに; // 読み取り専用の場合 colNode.OptionsColumn.ReadOnly = trueに; // 除去カラムの後にカスタムフォームの表示を許可するかどうか colNode.OptionsColumn.ShowInCustomizationForm = trueに; // カラムクリアする この.treeList1.Columns.Clear(); // 列のアレイは、コレクションの最後に追加します。 この .treeList1.Columns.AddRange(新しい新しいDevExpress.XtraTreeList.Columns.TreeListColumn [] {} colNode); #regionバインディングデータソース //ParentFieldNameセット特性はKeyFieldName // キーフィールドはXtratreeListデータソースコントロールにバインドを指定する値を設定し 、この .treeList1.KeyFieldName = keyFieldName; // これを識別するための親データソースに記録されたデータを表す値を設定しますソースフィールド。 この .treeList1.ParentFieldName = ParentFieldName; この .treeList1.DataSource = データ; // のリフレッシュデータ この.treeList1.RefreshDataSource(); #endregion }
注意:
1.listは、ID属性フラグは、親ノードの他のノードに指定され、データ・ソースを表示することです。
id属性は2.ParentIdの親ノード、対応するノードを指定され、ルートノードた場合、親ノードは空です。
3.NodeTextは、表示するノードのテキストです。
リストへの代入後4、だけでなく、関係を対応TreeListを伝えるために、次の2つのプロパティを設定する必要がtreelist
KeyFiledNameとParentFiledName。KeyFiledNameは、データソースコントロールキーフィールドにバインド指定し、前記IDは、上記指定されている、すなわち、フィールドマーカーとしてノード。
ParentFiledNameデータソースのフィールドは、このデータソースの親レコードのサインです。
次いで、カラムをさらにTreeListColumn新しいオブジェクト、フィールドもフィールド名で指定されたデータ・ソースからこの列を取るために割り当てられている列の数を、設定に関連する属性が使用されます。
ソースプロパティの取得を表示して、ソースコードに直接6.詳細プロパティ。
ソースのダウンロード
https://download.csdn.net/download/badao_liumang_qizhi/11614224