WPFプラットフォーム開発-どのようにツリーエディタをデータグリッドユニットに追加しますか?


取得ツールをクリック>>
問題
ツリーエディタを多選択機能のグリッドユニットに埋め込みたいですが、どのようにしてビューモデルSelectedPerilsをポップアップツリーコントロールのチェック項目に結び付けますか?
ソリューション
現在の目標はTreeListViewを持つポップアップエディターを使って集合属性を編集することであり、本明細書ではこの操作に必要なステップを説明する.
  • GridControlはFieldNameバインディングを使用したセット属性の編集をサポートしていません.属性宣言を変更して、オブジェクトの種類を使用したり、FieldNameではなくBindingを使用したりします.Binding Columns to Data Source Fieldsを参照してください.最初のオプションを使用します.
  • 同前
    `public object SelectedPerils{get;set;/…/SelectedPerils=new List()///….(List)Portfolios[0].SelectedPerils.Add(Portfolios[0].Perils[0](List)Portfolios[1].SelectedPerils.Add(Portfolios[1].Perils[1](List)Portfolios[2].Selected Perils).Add(Portfolios[2].Perils[0]);
    XAML
  • 私たちは、ロックUpEditを使用してポップアップウィンドウにGridControlを表示することを提案します.MultiSelectLook UpEdit Style Settingsを使用して、この操作を実行するための事前定義方法です.デフォルトのTable ViewをTree ListViewに置き換えたいので、CelTemplateとPopContentTemplateを宣言する必要があります.
    XAML
    `DisplayMember="Name"ItemsSource="{Binding RowData.Row.Perils]"Name="PART">
  • エディタはネスト値を選択することができるはずです.だから自己参照データ構造を使用する必要があります.これはなぜテンプレートにKeyFieldNameとPartent FieldNameの属性が使われているのですか?そうでなければ、あなたのLookUpEditはItemsSource以外の値を拒否します.そこでDisplayMemberを使って検索モードを開いたからです.
  • 同前
    public class Peril{public int ID{get;set;publicint PantID{get;set;set;=-1;///////////////…Perils=new List{new Peril="Earhquake",ID=0],new Peril Peril Peril{Name=Name===="EQ"======"EQ,PantID=0"========="EdededededededededededededededededededededededededededededentID=0"===0"""",InInInInInInInInInIn= 1),new Peril{Name=“HU”,ID=12,PartentID=1}new Peril{Name=“TC”、ID=13、PartentID=1}、new Peril{Name=“Tornado Hail”、ID=2}、new Peril{Name=“TH”、ID=14、PartentID=2}、new Peril{Name=“WS”、ID=15、PartentID=2}
  • Check BoxFieldName属性を使用していませんが、セレクションをMultiplleRowに設定しています.Tree ListViewのチェックボックスは選択に影響を与えません.カスタム実装を使用して同期しなければなりません(例えば、TreeView-Get選択項目を持つLookuditを参照してください)、TreeListViewの選択はSelectedPerils属性に自動的に発行されます.
  • これは以下のスクリーンショットのようなプレゼンテーションの結果です.