gtk-sharp 2.12.0.0 Gtk# is thread aware, but not thread safe; See the Gtk# Thread Programming for details. Gtk.Container A widget for displaying both trees and lists.

Widget that displays any object that implements the interface.

To create a tree or list in GTK#, you need to use the interface, in conjunction with the widget. This widget is designed around a Model/View/Controller design and consists of four major parts:

, the tree view widget
, the view column.
The cell renderers ( and others).
, the model interface.

The View is composed of the first three, while the last is the Model. One of the prime benefits of the MVC design is that multiple views can be created of a single model. For example, a model mapping the file system could be created for a file manager. Many views could be created to display various parts of the file system, but only one copy need be kept in memory.

The purpose of the cell renderers is to provide extensibility to the widget and to allow multiple ways of rendering the same type of data. For example, consider how to render a boolean variable. Should you render it as a string of "True" or "False", "On" or "Off", or should you render it as a checkbox?

A simple list: `using System; using Gtk; public class TreeViewSample { public static void Main (string [] args) { Application.Init (); TreeStore store = new TreeStore (typeof (string), typeof (string)); for (int i=0; i < 5; i++) { TreeIter iter = store.AppendValues ("Demo " + i, "Data " + i); } Window win = new Window ("TreeView List Demo"); win.DeleteEvent += new DeleteEventHandler (delete_cb); win.SetDefaultSize (400,250); ScrolledWindow sw = new ScrolledWindow (); win.Add (sw); TreeView tv = new TreeView (); tv.Model = store; tv.HeadersVisible = true; tv.AppendColumn ("Demo", new CellRendererText (), "text", 0); tv.AppendColumn ("Data", new CellRendererText (), "text", 1); sw.Add (tv); sw.Show (); win.ShowAll (); Application.Run (); } private static void delete_cb (System.Object o, DeleteEventArgs args) { Application.Quit (); args.RetVal = true; } }`

A more advanced example: `using System; using System.Reflection; using Gtk; public class TreeViewDemo { private static TreeStore store = null; private static Dialog dialog = null; private static Label dialog_label = null; public TreeViewDemo () { Application.Init (); PopulateStore (); Window win = new Window ("TreeView demo"); win.DeleteEvent += new DeleteEventHandler (DeleteCB); win.SetDefaultSize (640,480); ScrolledWindow sw = new ScrolledWindow (); win.Add (sw); TreeView tv = new TreeView (store); tv.HeadersVisible = true; tv.AppendColumn ("Name", new CellRendererText (), "text", 0); tv.AppendColumn ("Type", new CellRendererText (), "text", 1); sw.Add (tv); dialog.Destroy (); dialog = null; win.ShowAll (); Application.Run (); } private static void ProcessType (TreeIter parent, System.Type t) { foreach (MemberInfo mi in t.GetMembers ()) { store.AppendValues (parent, mi.Name, mi.ToString ()); } } private static void ProcessAssembly (TreeIter parent, Assembly asm) { string asm_name = asm.GetName ().Name; foreach (System.Type t in asm.GetTypes ()) { UpdateDialog ("Loading from {0}:\n{1}", asm_name, t.ToString ()); TreeIter iter = store.AppendValues (parent, t.Name, t.ToString ()); ProcessType (iter, t); } } private static void PopulateStore () { if (store != null) return; store = new TreeStore (typeof (string), typeof (string)); foreach (Assembly asm in AppDomain.CurrentDomain.GetAssemblies ()) { UpdateDialog ("Loading {0}", asm.GetName ().Name); TreeIter iter = store.AppendValues (asm.GetName ().Name, "Assembly"); ProcessAssembly (iter, asm); } } public static void Main (string[] args) { new TreeViewDemo (); } private static void DeleteCB (System.Object o, DeleteEventArgs args) { Application.Quit (); } private static void UpdateDialog (string format, params object[] args) { string text = String.Format (format, args); if (dialog == null) { dialog = new Dialog (); dialog.Title = "Loading data from assemblies..."; dialog.AddButton (Stock.Cancel, 1); dialog.Response += new ResponseHandler (ResponseCB); dialog.SetDefaultSize (480, 100); VBox vbox = dialog.VBox; HBox hbox = new HBox (false, 4); vbox.PackStart (hbox, true, true, 0); Gtk.Image icon = new Gtk.Image (Stock.DialogInfo, IconSize.Dialog); hbox.PackStart (icon, false, false, 0); dialog_label = new Label (text); hbox.PackStart (dialog_label, false, false, 0); dialog.ShowAll (); } else { dialog_label.Text = text; while (Application.EventsPending ()) Application.RunIteration (); } } private static void ResponseCB (object obj, ResponseArgs args) { Application.Quit (); System.Environment.Exit (0); } }`

For a example how to handle selection events, or to determine the currently selected row, see .

- Constructor
  2.12.0.0
  Creates a new object.
  This is the default constructor for
- Constructor
  2.12.0.0
  System.Obsolete
  a
  Protected Constructor.
  Chain to this constructor if you have manually registered a native value for your subclass.
- Constructor
  2.12.0.0
  System.Obsolete("Use NodeView with NodeStores")
  a
  TreeView constructor
  Creates a with as its .
- Constructor
  2.12.0.0
  an object of type
  Creates a new object.
  In this constructor the is set from .
- Constructor
  2.12.0.0
  Pointer to the C object.
  Internal constructor

  This is an internal constructor, and should not be used by user code.

- Method
  2.12.0.0
  System.Void `` `` an object of type an object of type Activates the cell determined by and .
- Method
  2.12.0.0
  System.Int32 `` an object of type Appends to the list of columns. an object of type
- Method
  2.12.0.0
  Gtk.TreeViewColumn `` `` `` a a a Adds a new to the TreeView and returns it. a This method actually creates the column, rather than relying on a column object to be passed in. There's an alternate invokation form if you'd like to pass in an existing column object.
- Method
  2.12.0.0
  Gtk.TreeViewColumn `` `` `` a a a Adds a new to the TreeView and returns it. a This method actually creates the column, rather than relying on a column object to be passed in. There's an alternate invokation form if you'd like to pass in an existing column object.
- Method
  2.12.0.0
  Gtk.TreeViewColumn `` `` `System.ParamArray` column title cell renderer attributes Adds a with a specific column title and attributes. The appended

  This function is used to append a new subclass with specific attributes to the .

  The following code sample will append a new to an existing and use column 0 from the as the text to render.

  `CellRendererText text = new CellRendererText (); tree_view.AppendColumn ("title", text, "text", 0);`
- Property
  2.12.0.0
  Gdk.Window The window that this TreeView renders to. an object of type This property is primarily used to confirm that events on the TreeView are executed within the correct window.
- Method
  2.12.0.0
  System.Void Recursively collapses all visible and expanded nodes.
- Method
  2.12.0.0
  System.Boolean `` an object of type Collapses a row (hides its child rows, if they exist). an object of type
- Property
  2.12.0.0
  Gtk.TreeViewColumnDropFunc The function for determining where a column may be dropped when dragged. a This function is called on every column pair in turn at the beginning of a column drag to determine where a drop can take place. If the property is set to be , then reverts to the default behavior of allowing all columns to be dropped everywhere.
- Property
  2.12.0.0
  Gtk.TreeViewColumn[] A list of all the columns currently in this TreeView. a
- Method
  2.12.0.0
  System.Void Resizes all columns to their optimal width. Only works after the has been realized.
- Event
  2.12.0.0
  GLib.Signal("columns-changed")
  System.EventHandler Raised when the columns of this tree change.
- Method
  2.12.0.0
  System.Void `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  2.12.0.0
  System.Void `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  2.12.0.0
  System.Void `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  2.12.0.0
  System.Void `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  2.12.0.0
  System.Void `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  2.12.0.0
  System.Void `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  2.12.0.0
  Gdk.Pixmap `` an object of type This image is used for a drag icon. an object of type Creates a representation of the row at .
- Event
  2.12.0.0
  GLib.Signal("cursor-changed")
  System.EventHandler Raised when the cursor changes (rows). `using Gtk; using System; class MainClass { public static int Main (string[] args) { Application.Init (); Window win = new Window("TreeView Cursor Changed Example"); win.DeleteEvent += OnWindowDelete; TreeStore store = new TreeStore(typeof(string), typeof(string)); for (int i = 0; i < 5; i++) store.AppendValues("demo " + i, "data " + i); TreeView tv = new TreeView(); tv.HeadersVisible = true; tv.Selection.Mode = SelectionMode.Single; tv.AppendColumn("Demo", new CellRendererText(), "text", 0); tv.AppendColumn("Data", new CellRendererText(), "text", 1); tv.CursorChanged += OnCursorChanged; tv.Model = store; win.Add(tv); win.ShowAll(); Application.Run (); return 0; } static void OnWindowDelete(object obj, DeleteEventArgs args) { Application.Quit(); } static void OnCursorChanged(object obj, EventArgs e) { TreeSelection selection = (obj as TreeView).Selection; TreeModel model; TreeIter iter; // The iter will point to the selected row if(selection.GetSelected(out model, out iter)) Console.WriteLine("Path of selected row = {0}", model.GetPath(iter)); } }`
- Property
  2.12.0.0
  Gtk.TreeDestroyCountFunc This property should almost never be used. It is meant for private use by ATK for determining the number of visible children that are removed when the user collapses a row, or a row is deleted. a It is meant for private use by Atk for determining the number of visible children that are removed when the user collapses a row, or a row is deleted.
- Property
  2.12.0.0
  GLib.Property("enable-grid-lines")
  Gtk.TreeViewGridLines Indicates which grid lines are drawn. a set of flags.
- Method
  2.12.0.0
  System.Void `` `` a [], a table of targets this TreeView will support. a , a bitmap of possible actions for a drag to this target Turns this TreeView object into a destination for automatic drag-and-drop.
- Method
  2.12.0.0
  System.Void `` `` `` a , the mask of the allowed buttons for starting a drag a [], a table of supported targets for dragging to a , what should be done with the dragged data. Allows the TreeView to be used as a source for drag-and-drop actions.
- Property
  2.12.0.0
  GLib.Property("enable-search")
  System.Boolean View allows user to search through columns interactively. an object of type
- Property
  2.12.0.0
  GLib.Property("enable-tree-lines")
  System.Boolean Indicates if connecting lines are drawn for expanders. if , connecting lines are drawn.
- Property
  2.12.0.0
  Gdk.Color This property contains the background color that is used for all odd rows. a The odd row color is only used when the property is set to true.
- Method
  2.12.0.0
  System.Void Recursively expands all nodes.
- Event
  2.12.0.0
  GLib.Signal("expand_collapse_cursor_row")
  Gtk.ExpandCollapseCursorRowHandler Raised when the row where the cursor is is expanded or collapsed.
- Property
  2.12.0.0
  GLib.Property("expander-column")
  Gtk.TreeViewColumn Set the column for the expander column. an object of type
- Method
  2.12.0.0
  System.Boolean `` `` an object of type an object of type Opens the row so its children are visible. an object of type
- Method
  2.12.0.0
  System.Void `` to expand to. Expands the treeview so the Path specified is visible.
- Property
  2.12.0.0
  GLib.Property("fixed-height-mode")
  System.Boolean Whether or not to assume all rows are the same height. a This is an optimization; set to for fastest performance.
- Method
  2.12.0.0
  Gdk.Rectangle `` `` a a Fills the bounding rectangle in tree window coordinates for the cell at the row specified by and the column specified by . a

  If is , or points to a node not found in the tree, the y and height fields of the rectangle will be filled with 0. If is , the x and width fields will be filled with 0. The returned rectangle is equivalent to the passed to . These background areas tile to cover the entire tree window (except for the area used for header buttons). Contrast with the , returned by , which returns only the cell itself, excluding surrounding borders and the tree expander area.

- Method
  2.12.0.0
  Gdk.Rectangle `` `` a a Fills the bounding rectangle in tree window coordinates for the cell at the row specified by and the column specified by . a

  If is , or points to a path not currently displayed, the y and height fields of the rectangle will be filled with 0. If is , the x and width fields will be filled with 0. The sum of all cell rects does not cover the entire tree; there are extra pixels in between rows, for example. This function is only valid if is realized.

- Method
  2.12.0.0
  Gtk.TreeViewColumn `` an object of type Gets the at the given position in the . an object of type
- Method
  2.12.0.0
  System.Void `` `` returns a to the selected row, or if there is no current selection. returns the focused , or . Gets the currently selected row and focused column.
- Method
  2.12.0.0
  System.Boolean `` `` `` `` a , the X coordinate a , the Y coordinate a to put the resulting destination row into. a to indicate where to put the dragged object, relative to the returned by this method. Determines the destination row for a given XY position. This is used by drag-and-drop operations to determine the target rows for the action. a
- Method
  2.12.0.0
  System.Void `` `` a to put the highlighted path into. a to put the drop position into. Gets information about the row that is highlighted for feedback.
- Method
  2.12.0.0
  System.Boolean `` `` `` an object of type an object of type an object of type Finds the path at the point (x, y), relative to widget coordinates. an object of type It is primarily for things like popup menus. If is non-, then it will be filled with the at that point. If is non-, then it will be filled with the at that point. This function is only meaningful if TreeView is realized.
- Method
  2.12.0.0
  System.Boolean `` `` `` `` a , an x coordinate a , a y coordinate a to fill with the path at the (x,y) coordinate. a to fill with the column at the (x,y) coordinate. Finds the path at the point (x, y), relative to widget coordinates. a , true if a row exists at (x,y) This is an alternate invocation form which doesn't return coordinates for the position relative to a cell's background.
- Method
  2.12.0.0
  System.Boolean `` `` `` `` `` `` a , an x coordinate a , a y coordinate a to fill with the path at the (x,y) coordinate. a to fill with the column at the (x,y) coordinate. a to fill with the x coordinate relative to the cell background. a to fill with the y coordinate relative to the cell background. Finds the path at the point (x, y), relative to widget coordinates. a , true if a row exists at (x,y).

  x and y must come from an event on the tree_view only where the event's window is the same as the window this TreeView renders to. It is primarily for things like popup menus. If path is non-null, then it will be filled with the GtkTreePath at that point. This path should be freed with . If column is non-NULL, then it will be filled with the column at that point.

  cell_x and cell_y return the coordinates relative to the cell background (i.e. the background_area passed to ). This function is only meaningful if the TreeView object is realized.

- Method
  2.12.0.0
  System.Boolean `` an object of type Returns if the node pointed to by is expanded. an object of type
- Method
  2.12.0.0
  System.Boolean `` `` `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  2.12.0.0
  System.Boolean `` `` returns a to the first visible row. returns a to the last visible row. Gets the visible rows of the view. if the start and end paths were set. Note: there may be invisible paths between the start and end paths returned.
- Method
  2.12.0.0
  System.Obsolete("Replaced by VisibleRect property.")
  System.Void `` an object of type Obsolete (and non-functional). Replaced by .
- Property
  2.12.0.0
  GLib.GType GType Property. a Returns the native value for .
- Property
  2.12.0.0
  GLib.Property("hadjustment")
  Gtk.Adjustment Horizontal Adjustment for the widget. an object of type
- Property
  2.12.0.0
  GLib.Property("headers-clickable")
  System.Boolean Column headers respond to click events. a
- Property
  2.12.0.0
  GLib.Property("headers-visible")
  System.Boolean Show the column header buttons. an object of type
- Property
  2.12.0.0
  GLib.Property("hover-expand")
  System.Boolean To be added a To be added
- Property
  2.12.0.0
  GLib.Property("hover-selection")
  System.Boolean Whether a row should be highlighted when the cursor is over it. a To be added
- Method
  2.12.0.0
  System.Int32 `` `` an object of type an object of type This inserts the into the at . an object of type If is -1, then the is inserted at the end.
- Method
  2.12.0.0
  System.Int32 `` `` `` `` a , the position of the new column (-1 to append, positive numbers to insert) a , the column title a , the renderer object a , a function for presenting the data Convenience function that inserts a new column into the tree view with the given cell renderer and a to set cell renderer attributes (normally using data from the model). The number of columns in the tree view after the insertion. See also , . If the tree view has enabled, then must have its property set to be .
- Method
  2.12.0.0
  System.Int32 `` `` `` `System.ParamArray` a , the position of the new column (-1 to append, positive numbers to insert) a , the column title a , the renderer object an array of attribute bindings Convenience function that inserts a new column into the tree view with the given cell renderer and attribute bindings for the cell renderer. The number of columns in the tree view after the insertion.
- Property
  2.12.0.0
  System.Boolean To be added. To be added. To be added.
- Property
  2.12.0.0
  GLib.Property("level-indentation")
  System.Int32 Extra indentation amount for each level of the hierarchy. defaults to 0.
- Method
  2.12.0.0
  System.Void `` a to execute on every expanded row. Calls the given function on all expanded rows.
- Property
  2.12.0.0
  GLib.Property("model")
  Gtk.TreeModel The model for the TreeView. an object of type
- Method
  2.12.0.0
  System.Void `` `` an object of type an object of type Moves to be after to . If is , then is placed in the first position.
- Event
  2.12.0.0
  GLib.Signal("move_cursor")
  Gtk.MoveCursorHandler Raised whenever the cursor is moved on this TreeView.
- Property
  2.12.0.0
  Gdk.Color This property contains the background color that is used for all even rows. a
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideColumnsChanged", Type=typeof(Gtk.TreeView))
  System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideCursorChanged", Type=typeof(Gtk.TreeView))
  System.Void Default handler for the event. Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideExpandCollapseCursorRow", Type=typeof(Gtk.TreeView))
  System.Boolean `` `` `` a a a Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideMoveCursor", Type=typeof(Gtk.TreeView))
  System.Boolean `` `` a a Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideRowActivated", Type=typeof(Gtk.TreeView))
  System.Void `` `` a a Default handler for the event. Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideRowCollapsed", Type=typeof(Gtk.TreeView))
  System.Void `` `` a a Default handler for the event. Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideRowExpanded", Type=typeof(Gtk.TreeView))
  System.Void `` `` a a Default handler for the event. Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideScrollAdjustmentsSet", Type=typeof(Gtk.TreeView))
  System.Void `` `` a a Default handler for the event. Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideSelectAll", Type=typeof(Gtk.TreeView))
  System.Boolean Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideSelectCursorParent", Type=typeof(Gtk.TreeView))
  System.Boolean Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideSelectCursorRow", Type=typeof(Gtk.TreeView))
  System.Boolean `` a Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideStartInteractiveSearch", Type=typeof(Gtk.TreeView))
  System.Boolean Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideTestCollapseRow", Type=typeof(Gtk.TreeView))
  System.Boolean `` `` a a Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideTestExpandRow", Type=typeof(Gtk.TreeView))
  System.Boolean `` `` a a Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideToggleCursorRow", Type=typeof(Gtk.TreeView))
  System.Boolean Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  GLib.DefaultSignalHandler(ConnectionMethod="OverrideUnselectAll", Type=typeof(Gtk.TreeView))
  System.Boolean Default handler for the event. a Override this method in a subclass to provide a default handler for the event.
- Method
  2.12.0.0
  System.Int32 `` an object of type Removes from . an object of type
- Property
  2.12.0.0
  GLib.Property("reorderable")
  System.Boolean Allows to reorder rows in the view (this enables the internal drag and drop of TreeView rows). an object of type
- Event
  2.12.0.0
  GLib.Signal("row_activated")
  Gtk.RowActivatedHandler Raised when a row is activated; see .

  This event is usually raised when the user doubleclicks a row.

  `using System; using Gtk; class Selection { static void Main () { Application.Init (); Window win = new Window ("Row activated sample"); win.DeleteEvent += OnWinDelete; TreeView tv = new TreeView (); tv.AppendColumn ("Items", new CellRendererText (), "text", 0); ListStore store = new ListStore (typeof (string)); store.AppendValues ("item 1"); store.AppendValues ("item 2"); tv.Model = store; tv.RowActivated += OnRowActivate; win.Add (tv); win.ShowAll (); Application.Run (); } static void OnRowActivate (object o, RowActivatedArgs args) { Console.WriteLine("row {0} was doubleclicked", args.Path); } static void OnWinDelete (object o, DeleteEventArgs args) { Application.Quit (); } }`
- Event
  2.12.0.0
  GLib.Signal("row-collapsed")
  Gtk.RowCollapsedHandler Raised whenever a row is collapsed.
- Event
  2.12.0.0
  GLib.Signal("row-expanded")
  Gtk.RowExpandedHandler Raised whenever a row of the TreeView is expanded.
- Property
  2.12.0.0
  Gtk.TreeViewRowSeparatorFunc Callback function to indicate whether or not a given row of the tree view should be rendered as a separator. a
- Property
  2.12.0.0
  GLib.Property("rubber-banding")
  System.Boolean Indicates if Rubberbanding multi-selection is supported. if , rubberbanding is active.
- Property
  2.12.0.0
  GLib.Property("rules-hint")
  System.Boolean Whether to display alternating, shaded rows in the . an object of type

  Setting to sets a hint to the theme engine to draw rows in alternating colors.

  This property tells GTK# that the user interface for your application requires users to read across tree rows and associate cells with one another. By default, GTK# will then render the tree with alternating row colors. Do not use it just because you prefer the appearance of the ruled tree; that's a question for the theme. Some themes will draw tree rows in alternating colors even when rules are turned off, and users who prefer that appearance all the time can choose those themes. You should set this property only as a semantic hint to the theme engine that your tree makes alternating colors useful from a functional standpoint (since it has lots of columns, generally).

- Event
  2.12.0.0
  GLib.Signal("set_scroll_adjustments")
  Gtk.ScrollAdjustmentsSetHandler Raised whenever the scrollbar adjustment units are set.
- Method
  2.12.0.0
  System.Void `` `` `` `` `` an object of type an object of type an object of type an object of type an object of type Moves the alignments of the to the position specified by and .

  If is , then no horizontal scrolling occurs. Likewise, if is no vertical scrolling occurs. At a minimum, one of or need to be non-. determines where the row is placed, and determines where the column is placed. Both are expected to be between 0.0 and 1.0. 0.0 means left/top alignment, 1.0 means right/bottom alignment, 0.5 means center.

  If is , then the alignment arguments are ignored, and the tree does the minimum amount of work to scroll the cell onto the screen. This means that the cell will be scrolled to the edge closest to its current position. If the cell is currently visible on the screen, nothing is done.

  This function only works if the model is set, and is a valid row on the model. If the model changes before the is realized, the centered path will be modified to reflect this change.

- Method
  2.12.0.0
  System.Void `` `` an object of type an object of type Scrolls the such that the top-left corner of the visible area is , , where and are specified in tree window coordinates. The must be realized before this function is called. If it is not, you probably want to be using .
- Property
  2.12.0.0
  GLib.Property("search-column")
  System.Int32 Model column to search through when searching through code. an object of type
- Property
  2.12.0.0
  Gtk.Entry Identifies a custom search entry widget for the view. if , the default popup entry is used. This is useful for providing a fixed position search entry to the interface.
- Property
  2.12.0.0
  Gtk.TreeViewSearchEqualFunc The compare function for the interactive search capabilities. a
- Property
  2.12.0.0
  Gtk.TreeViewSearchPositionFunc Delegate to use when positioning the search dialog for the view. a search position delegate.
- Event
  2.12.0.0
  GLib.Signal("select_all")
  Gtk.SelectAllHandler Raised whenever all rows of the TreeView are selected.
- Event
  2.12.0.0
  GLib.Signal("select_cursor_parent")
  Gtk.SelectCursorParentHandler Raised when the parent row of the current row is selected. (FIXME: explain in more detail.
- Event
  2.12.0.0
  GLib.Signal("select_cursor_row")
  Gtk.SelectCursorRowHandler Raised when the row the cursor is on is selected.
- Property
  2.12.0.0
  Gtk.TreeSelection Gets the associated with the TreeView. an object of type
- Method
  2.12.0.0
  System.Obsolete("Replaced by ColumnDragFunction property.")
  System.Void `` `` `` an object of type ignored ignored Sets a user function for determining where a column may be dropped when dragged. This method is obsolete. New code should use the property.
- Method
  2.12.0.0
  System.Void `` `` `` an object of type an object of type an object of type Sets the current keyboard focus to be at , and selects it. This is useful when you want to focus the attention of the user on a particular row. If is not , then focus is given to the column specified by it. Additionally, if is specified, and is , then editing should be started in the specified cell. This function is often followed by in order to give keyboard focus to the widget. Please note that editing can only happen when the widget is realized.
- Method
  2.12.0.0
  System.Void `` `` `` `` a a a a Sets the current keyboard focus to be on the given . This is useful for getting the user's attention to a particular row.

  If focus_column is not null, then focus is given to the column specified by it. If focus_column and focus_cell are not null, and focus_column contains 2 or more editable or activatable cells, then focus is given to the cell specified by focus_cell. Additionally, if focus_column is specified, and start_editing is null, then editing should be started in the specified cell.

  This function is often followed by(tree_view_obj) in order to give keyboard focus to the widget. Please note that editing can only happen when the widget is realized.

- Method
  2.12.0.0
  System.Obsolete("Replaced by DestroyCountFunc property.")
  System.Void `` `` `` an object of type ignored ignored This function should almost never be used. It is meant for private use by ATK for determining the number of visible children that are removed when the user collapses a row, or a row is deleted. It is meant for private use by Atk for determining the number of visible children that are removed when the user collapses a row, or a row is deleted.
- Method
  2.12.0.0
  System.Void `` `` an object of type , the path of the row to highlight, or null. an object of type , specifying whether to drop before, after, or into the row. Sets the row that is highlighted for drag-and-drop feedback.
- Method
  2.12.0.0
  System.Obsolete("Replaced by SearchEqualFunc property.")
  System.Void `` `` `` The to invoke. ignored ignored Sets the compare function for the interactive search capabilities. This method is obsolete. New code should use the property.
- Method
  2.12.0.0
  System.Void `` `` `` `` To be added. To be added. To be added. To be added. To be added. To be added.
- Method
  2.12.0.0
  System.Void `` `` To be added. To be added. To be added. To be added.
- Property
  2.12.0.0
  GLib.Property("show-expanders")
  System.Boolean Indicates if expanders are shown. defaults to .
- Event
  2.12.0.0
  GLib.Signal("start_interactive_search")
  Gtk.StartInteractiveSearchHandler Raised when the user begins a search of the tree.
- Event
  2.12.0.0
  GLib.Signal("test-collapse-row")
  Gtk.TestCollapseRowHandler Raised when the system wants to know whether a particular row can be collapsed.
- Event
  2.12.0.0
  GLib.Signal("test-expand-row")
  Gtk.TestExpandRowHandler Raised when the widget wants to find out whether a row can be expanded or not.
- Event
  2.12.0.0
  GLib.Signal("toggle_cursor_row")
  Gtk.ToggleCursorRowHandler Raised when the cursor toggles a row. (FIXME: explain in more detail.)
- Property
  2.12.0.0
  GLib.Property("tooltip-column")
  System.Int32 To be added. To be added. To be added.
- Method
  2.12.0.0
  System.Obsolete
  System.Void `` `` `` `` a , the X coordinate of the tree location a , the Y coordinate of the tree location a , the X coordinate for the widget a , the Y coordinate for the widget Converts tree coordinates to widget coordinates. Tree coordinates start at 0,0 for row 0 of the tree, and cover the entire scrollable area of the tree.
- Event
  2.12.0.0
  GLib.Signal("unselect_all")
  Gtk.UnselectAllHandler Raised whenever all rows of the TreeView are specifically deselected.
- Method
  2.12.0.0
  System.Void Disables the TreeView as a drag-and-drop destination. To be added.
- Method
  2.12.0.0
  System.Void Disables the TreeView as a drag source for automatic drag and drop actions.
- Property
  2.12.0.0
  GLib.Property("vadjustment")
  Gtk.Adjustment Vertical Adjustment for the widget. an object of type
- Property
  2.12.0.0
  Gdk.Rectangle Returns the currently-visible region of the tree view, in tree view coordinates. a Convert to widget coordinates with . Tree coordinates start at 0,0 for row 0 of the tree, and cover the entire scrollable area of the tree.
- Method
  2.12.0.0
  System.Obsolete
  System.Void `` `` `` `` an object of type an object of type an object of type an object of type Converts widget coordinates to coordinates for the tree window (the full scrollable area of the tree).