2011-01-25 4 views
1

私はtreelistのデータソースとしてDifferenceクラスを使用します。次に、Difference型のプロパティ値に応じてノードと異なるアイコンを表示したいと思います。ここに私のコードです:TreeListデベロッパーアイコン

treeList1_GetStateImage(object sender, DevExpress.XtraTreeList.GetStateImageEventArgs e) 
{ 
TreeListColumn tlColumn = treeList1.Columns["DifferenceType"]; 
     DifferenceTypeEnum differenceType = (DifferenceTypeEnum)e.Node.GetValue(tlColumn); 
     switch (differenceType) 
     { 
      case DifferenceTypeEnum.Added: 

       e.NodeImageIndex = 0; 
       break; 
      case DifferenceTypeEnum.Deleted: 
       e.NodeImageIndex = 1; 
       break; 
      case DifferenceTypeEnum.Modified: 
       e.NodeImageIndex = 2; 
       break; 
      default: 
       throw new Exception("Difference with not specified type"); 
     } 

選択したときに選択されていないとき、私は同じアイコンを持っていると思いますが、すべてのthats、nothiung他に、今私は、ノードNodeImageIndexをクリックするたびに0、ときのノードに変更され私はあなたにも、ときに、特定示されるべき画像を定義するGetSelectImageイベントを処理することを示唆している任意のヘルプ

+0

どのようにノードを作成していますか?任意の基準(この場合、 'DifferenceTypeEnum'値)に基づいて各ノードを作成するときにノードイメージを設定できます。 – Bernard

答えて

1

ため

感謝...選択したすべてのものは、

えっイムこれの疲れを正常に動作アレントノードが選択されます。

+0

しかし、getSelectImageに表示する画像を定義したくありません。私はすべてのノードにどの画像を表示すべきかを恥知らずに知っており、オブジェクトの特性に依存しています。私は、ノードが選択されているときにイメージを変更したくない。 – gruber

1

タイプのプロパティに応じて、指定されたアイコンとノードをどのように接続できるかを知りたいだけです。レットはフルーツリストに結びついていて、果物がバナナに設定されている場合は画像がbanana.pngになります。apple:apple.pngなど。

imageこのツリーリストに関連付けられている画像は次のとおりです対応するインデックス。

関連する問題