2017-10-11 4 views
0

私のアプリケーションにWPF Treeviewがあります。ここでは、フォルダとファイルを表示しています。これらは異なるアイテムであるため、this linkで提案されているように、アイテムをツリービューにバインドするためにコンポジットコレクションの手法を使用しています。WPFからSelectedItemをコンポジットコレクションアイテムで保存する

今、私はWPF TreeviewからSelectedItemを格納する必要があります。このために、ViewModelでプロパティを定義したいと思います。しかし、問題は、FolderItem型でプロパティを定義すると、Treeviewでファイルを選択したときにこのプロパティがヒットしないということです。

フォルダやファイルのどちらに関係なく、選択したアイテムを保存する方法が必要です。

ご協力いただきまして誠にありがとうございます。あなたはobjectに財産の種類や種類を変えることができるのいずれか kvk938

答えて

0

よろしく、そのあなたのFolderItemクラスからのごFile継承(またはそれはインターフェイスタイプがある場合は実装)の両方:

public interface IItem 
{ 
    string Name { get; } 
} 

public class FolderItem : IItem 
{ 
    public string Name { get; set; } 
    public List<File> Files { get; set; } 
} 

public class File : IItem 
{ 
    public string Name { get; set; } 
} 

ビューモデル:

public IItem SelectedItem { get; set; } 
関連する問題