See Also: TreeModelFilter Members
C# Example
using System; using Gtk; public class MyWindow : Window { TreeView view; TreeModelFilter filter; Entry search; static void Main () { Application.Init (); new MyWindow (); Application.Run (); } public MyWindow () : base ("MyWindow") { this.SetDefaultSize (400, 300); this.DeleteEvent += new DeleteEventHandler (OnMyWindowDelete); view = new TreeView (); view.AppendColumn ("test", new CellRendererText (), "text", 0); TreeStore store = new TreeStore (typeof (string)); string[] names = new string[] {"bob", "joe", "joseph", "frank"}; foreach (string name in names) store.AppendValues (name); view.Model = store; filter = new TreeModelFilter (store, null); filter.VisibleFunc = SearchFilterFunc; VBox vbox = new VBox (false, 6); search = new Entry (); search.Activated += OnSearch; Label l = new Label ("Search:"); l.Xalign = 0.0f; vbox.PackStart (l, false, true, 0); vbox.PackStart (search, false, true, 0); vbox.PackStart (view, true, true, 0); this.Add (vbox); this.ShowAll (); } bool SearchFilterFunc (TreeModel model, TreeIter iter) { // no search term, show all if (search.Text.Trim ().Length < 1) return true; string t = (string) model.GetValue (iter, 0); return t.StartsWith (search.Text.Trim ()); } void OnSearch (object sender, EventArgs a) { view.Model = filter; filter.Refilter (); } void OnMyWindowDelete (object sender, DeleteEventArgs a) { Application.Quit (); a.RetVal = true; } }