2016-05-07 3 views
-1

私はMonoアプリケーションでツリービューを取得しました。私はGTK#を使用しています。ユーザーがクリックしたツリービューセルを検出して、そのセルからデータを取得できるようにしたいが、Monoドキュメンテーションで有用なものは何も見つかりません。セルを検出モノツリービューでクリック

誰かがこれまたは任意の提案の解決策を見つけましたか?

どうもありがとう

+0

これまでに行ったことをお知らせください。 –

+0

実際に共有する価値のあるコードはありません。標準的なツリービューです。 –

答えて

0

私は、ツリービューで自分のTreePathをキーとオブジェクトの辞書を保つことによってそれをやりました。例えば。次のようなものを入力してください:

IDictionary<string, MyType> thePathKeyedObjects = new Dictionary<string, MyType>(); 

Gtk.TreeStore _ts = new TreeStore (typeof(string)); 
foreach (MyType _t in _somelistofmytypes) { 
    Gtk.TreeIter _it = _ts.AppendValues (_t.SomeTextForTheTreeView); 
    thePathKeyedObjects.Add(_ts.GetPath (_it).ToString(), _t); 
} 
treeview.Model = _ts; 

// and then later... 

Gtk.TreeIter _it; 
Gtk.TreeModel _mdl; 
if (treeview.Selection.CountSelectedRows() > 0) { 
    treeview.Selection.GetSelected (out _mdl, out _it); 
    string _path = _mdl.GetPath (_it).ToString(); 
    MyType _selected_t = thePathKeyedObjects[_path]; 
} 
関連する問題