<Type Name="ListStore" FullName="Gtk.ListStore">
  <TypeSignature Language="C#" Maintainer="auto" Value="public class ListStore : GLib.Object, Gtk.ITreeDragDest, Gtk.ITreeDragSource, Gtk.ITreeModel, Gtk.ITreeSortable, System.Collections.IEnumerable" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit ListStore extends GLib.Object implements class GLib.IWrapper, class Gtk.ITreeDragDest, class Gtk.ITreeDragSource, class Gtk.ITreeModel, class Gtk.ITreeSortable, class System.Collections.IEnumerable" />
  <AssemblyInfo>
    <AssemblyName>gtk-sharp</AssemblyName>
    <AssemblyPublicKey>
    </AssemblyPublicKey>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement>
  <Base>
    <BaseTypeName>GLib.Object</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>Gtk.ITreeDragDest</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>Gtk.ITreeDragSource</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>Gtk.ITreeModel</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>Gtk.ITreeSortable</InterfaceName>
    </Interface>
    <Interface>
      <InterfaceName>System.Collections.IEnumerable</InterfaceName>
    </Interface>
  </Interfaces>
  <Docs>
    <summary>The ListStore is a columned list data structure to be used with <see cref="T:Gtk.TreeView" /> widget. </summary>
    <remarks>
      <para>
Iteration: In new versions of Gtk# (2.0 and up) this class implements the <see cref="T:System.Collections.IEnumerable" /> interface, so code can be written like this:
</para>
      <para>
        <example>
          <code lang="C#">
     void DumpColumnValues (ListStore store, int col)
     {
         foreach (object[] row in store) 
              Console.WriteLine ("Value of column {0} is {1}", col, row [col]);
     }
  </code>
        </example>
      </para>
    </remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected ListStore ();" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor() cil managed" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>Protected constructor.</summary>
        <remarks>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public ListStore (GLib.GType[] types);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(valuetype GLib.GType[] types) cil managed" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="types" Type="GLib.GType[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="types">a <see cref="T:GLib.GType[]" /></param>
        <summary>Default constructor.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public ListStore (IntPtr raw);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(native int raw) cil managed" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="raw" Type="System.IntPtr" />
      </Parameters>
      <Docs>
        <param name="raw">Pointer to the C object.</param>
        <summary>Internal constructor</summary>
        <remarks>
          <para>This is an internal constructor, and should not be used by user code.</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public ListStore (Type[] types);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Type[] types) cil managed" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="types" Type="System.Type[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="types">a <see cref="T:System.Type[]" /></param>
        <summary>Creates a new store. The columns' type specified by the argument.</summary>
        <remarks>
          <example>
            <code lang="C#">
ListStore ls = new ListStore (typeof (string), typeof (int), typeof (double));
...
  </code>
          </example>
The above example creates a new three columns list store. The types of the columns are <see cref="T:System.String" />, <see cref="T:System.Int32" />, and <see cref="T:System.Double" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Append">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter Append ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype Gtk.TreeIter Append() cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Appends a new row to the ListStore.</summary>
        <returns>a <see cref="T:Gtk.TreeIter" /> that points to the new row.</returns>
        <remarks>
	  The row will be empty before this function is called. To set the
	  value of the new row, use <see cref="M:Gtk.ListStore.SetValue" />. 
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="AppendValues">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter AppendValues (Array values);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype Gtk.TreeIter AppendValues(class System.Array values) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="values" Type="System.Array" />
      </Parameters>
      <Docs>
        <param name="values">a <see cref="T:System.Array" /> with as many elements as the ListStore has columns.</param>
        <summary>Appends a new row to the ListStore and puts the contents of <paramref name="values" /> in it.</summary>
        <returns>a <see cref="T:Gtk.TreeIter" /> pointing to the new row</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="AppendValues">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter AppendValues (object[] values);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype Gtk.TreeIter AppendValues(object[] values) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="values" Type="System.Object[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="values">a list <see cref="T:System.Object[]" />, one item for each column of a row.</param>
        <summary>Appends a new row to the ListStore and puts the objects in <paramref name="values" /> in it.</summary>
        <returns>a <see cref="T:Gtk.TreeIter" /> pointing to the new row</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="ChangeSortColumn">
      <MemberSignature Language="C#" Value="public void ChangeSortColumn ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void ChangeSortColumn() cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Emits a <see cref="M:Gtk.ListStore.SortColumnChanged" /> event.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="Clear">
      <MemberSignature Language="C#" Value="public void Clear ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Clear() cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Removes all data from the store.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="ColumnTypes">
      <MemberSignature Language="C#" Value="public GLib.GType[] ColumnTypes { set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance valuetype GLib.GType[] ColumnTypes" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>GLib.GType[]</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>The types in each column of a ListStore.</summary>
        <value>a <see cref="T:GLib.GType[]" /></value>
        <remarks>
	    This property is meant primarily for classes that
	    inherit from <see cref="T:Gtk.ListStore" />, and should
	    only be used when constructing a new <see cref="T:Gtk.ListStore" />. It will not function after a
	    row has been added or after a method on the <see cref="T:Gtk.TreeModel" /> interface has been called.
	</remarks>
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="DefaultSortFunc">
      <MemberSignature Language="C#" Value="public Gtk.TreeIterCompareFunc DefaultSortFunc { set; }" />
      <MemberSignature Language="ILAsm" Value=".property instance class Gtk.TreeIterCompareFunc DefaultSortFunc" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIterCompareFunc</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>The function that will be used by default to sort columns.</summary>
        <value>a <see cref="T:Gtk.TreeIterCompareFunc" /></value>
        <remarks />
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="DragDataDelete">
      <MemberSignature Language="C#" Value="public bool DragDataDelete (Gtk.TreePath path);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool DragDataDelete(class Gtk.TreePath path) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
      </Parameters>
      <Docs>
        <param name="path">A <see cref="T:Gtk.TreePath" />, the path of the data to delete.</param>
        <summary>When this ListStore is the data source for a drag operation and the drag operation is a move, this method runs to delete the data after the data has been received by the target widget.</summary>
        <returns>A <see cref="T:System.Boolean" />, true if the operation succeeds.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="DragDataGet">
      <MemberSignature Language="C#" Value="public bool DragDataGet (Gtk.TreePath path, Gtk.SelectionData selection_data);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool DragDataGet(class Gtk.TreePath path, class Gtk.SelectionData selection_data) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="selection_data" Type="Gtk.SelectionData" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /></param>
        <param name="selection_data">A <see cref="T:Gtk.SelectionData" /></param>
        <summary>Method used when this ListStore is part of a source widget
	for a drag-and-drop operation; gets the data that was dragged from the
	associated widget.</summary>
        <returns>A <see cref="T:System.Boolean" />, true if the operation succeeded.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="DragDataReceived">
      <MemberSignature Language="C#" Value="public bool DragDataReceived (Gtk.TreePath dest, Gtk.SelectionData selection_data);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool DragDataReceived(class Gtk.TreePath dest, class Gtk.SelectionData selection_data) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="dest" Type="Gtk.TreePath" />
        <Parameter Name="selection_data" Type="Gtk.SelectionData" />
      </Parameters>
      <Docs>
        <param name="dest">A <see cref="T:Gtk.TreePath" />, the destination path of the drag</param>
        <param name="selection_data">A <see cref="T:Gtk.SelectionData" />, the data that was dragged</param>
        <summary>Drags data received into this <see cref="T:Gtk.ListStore" /> object.</summary>
        <returns>A boolean, true if the data was successfully received.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="EmitRowChanged">
      <MemberSignature Language="C#" Value="public void EmitRowChanged (Gtk.TreePath path, Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void EmitRowChanged(class Gtk.TreePath path, valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /></param>
        <param name="iter">a <see cref="Gtk.TreeIter" /></param>
        <summary>Fires a <see cref="E:Gtk.ListStore.RowChanged" /> event. Call this after changing a row so that the view widget for this ListStore will update.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="EmitRowDeleted">
      <MemberSignature Language="C#" Value="public void EmitRowDeleted (Gtk.TreePath path);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void EmitRowDeleted(class Gtk.TreePath path) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /> to pass to the event.</param>
        <summary>Fires a <see cref="E:Gtk.TreeModel.RowDeleted" /> event. </summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="EmitRowHasChildToggled">
      <MemberSignature Language="C#" Value="public void EmitRowHasChildToggled (Gtk.TreePath path, Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void EmitRowHasChildToggled(class Gtk.TreePath path, valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /> to pass to the event</param>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /> to pass to the event</param>
        <summary>Emits a <see cref="T:Gtk.ListStore.RowHasChildToggled" /> event. This is meant to be called whenever the child state of a node changes.</summary>
        <remarks>This is mandated by the <see cref="T:Gtk.TreeModel" />, but it
	  shouldn't get used much for ListStores because they don't generally
	  have child nodes.</remarks>
      </Docs>
    </Member>
    <Member MemberName="EmitRowInserted">
      <MemberSignature Language="C#" Value="public void EmitRowInserted (Gtk.TreePath path, Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void EmitRowInserted(class Gtk.TreePath path, valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /> to pass to the event.</param>
        <param name="iter">a see cref="T:Gtk.TreeIter" /&gt; to pass to the event.</param>
        <summary>Fires a <see cref="E:Gtk.TreeModel.RowInserted" /> event. </summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="EmitRowsReordered">
      <MemberSignature Language="C#" Value="public void EmitRowsReordered (Gtk.TreePath path, Gtk.TreeIter iter, int[] new_order);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void EmitRowsReordered(class Gtk.TreePath path, valuetype Gtk.TreeIter iter, int32[] new_order) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="new_order" Type="System.Int32[]" />
      </Parameters>
      <Docs>
        <param name="path">To be added.</param>
        <param name="iter">To be added.</param>
        <param name="new_order">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
        <since version="Gtk# 3.0" />
      </Docs>
    </Member>
    <Member MemberName="Flags">
      <MemberSignature Language="C#" Value="public Gtk.TreeModelFlags Flags { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance valuetype Gtk.TreeModelFlags Flags" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeModelFlags</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>The flags for this ListStore. </summary>
        <value>A <see cref="T:Gtk.TreeModelFlags" /></value>
        <remarks>Flags are about the shape of this object's data; see the
	  class documentation for more details.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Foreach">
      <MemberSignature Language="C#" Value="public void Foreach (Gtk.TreeModelForeachFunc func);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void Foreach(class Gtk.TreeModelForeachFunc func) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="func" Type="Gtk.TreeModelForeachFunc" />
      </Parameters>
      <Docs>
        <param name="func">A <see cref="T:Gtk.TreeModelForeachFunc" /> to run over every row.</param>
        <summary>Runs a method on every row of a ListStore.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetColumnType">
      <MemberSignature Language="C#" Value="public GLib.GType GetColumnType (int index_);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance valuetype GLib.GType GetColumnType(int32 index_) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>GLib.GType</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="index_" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="index_">a <see cref="T:System.Int32" />, the column to check</param>
        <summary>Gets the type of data stored in column number <paramref name="index_" />.</summary>
        <returns>a <see cref="T:GLib.GType" /></returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetEnumerator">
      <MemberSignature Language="C#" Value="public System.Collections.IEnumerator GetEnumerator ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Collections.IEnumerator GetEnumerator() cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Collections.IEnumerator</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
          <para>Returns a <see cref="T:System.Collections.IEnumerator" /> for the current instance. The enumerated items are object arrays containing the column values for each row.</para>
        </summary>
        <returns>A <see cref="T:System.Collections.IEnumerator" /> enumerating items of type <see cref="T:System.Object" />[].</returns>
        <remarks>
          <para> If the elements of the current instance are modified while an enumeration is in progress, a call to <see cref="M:System.Collections.IEnumerator.MoveNext" /> or <see cref="P:System.Collections.IEnumerator.Current" /> throws <see cref="T:System.InvalidOperationException" />.</para>
        </remarks>
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="GetIter">
      <MemberSignature Language="C#" Value="public bool GetIter (out Gtk.TreeIter iter, Gtk.TreePath path);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool GetIter(valuetype Gtk.TreeIter iter, class Gtk.TreePath path) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="out" />
        <Parameter Name="path" Type="Gtk.TreePath" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter&amp;" /> to set to point to the row.</param>
        <param name="path">a <see cref="Gtk.TreePath" /></param>
        <summary>Gets an iterator object for the given <paramref name="path" />.</summary>
        <returns>A <see cref="T:System.Boolean" />, true if the row exists</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetIterFirst">
      <MemberSignature Language="C#" Value="public bool GetIterFirst (out Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool GetIterFirst(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <param name="iter">A <see cref="T:Gtk.TreeIter&amp;" /> to reset</param>
        <summary>Initializes <paramref name="iter" /> with the first iterator in the ListStore (the top item).</summary>
        <returns>A <see cref="T:System.Boolean" />, true if the operation is successful, false if the ListStore is empty.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetIterFromString">
      <MemberSignature Language="C#" Value="public bool GetIterFromString (out Gtk.TreeIter iter, string path_string);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool GetIterFromString(valuetype Gtk.TreeIter iter, string path_string) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="out" />
        <Parameter Name="path_string" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter&amp;" /> to be set by this method</param>
        <param name="path_string">A path string</param>
        <summary>Marshals a path string into a <see cref="T:Gtk.TreeIter" /> object that points to a row in this tree.</summary>
        <returns>A <see cref="System.Boolean" />, true if this string is a valid path for this ListStore.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetPath">
      <MemberSignature Language="C#" Value="public Gtk.TreePath GetPath (Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class Gtk.TreePath GetPath(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreePath</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Turns a <see cref="T:Gtk.TreeIter" /> specified by <paramref name="iter" /> into a <see cref="T:Gtk.TreePath" />.</summary>
        <returns>a <see cref="T:Gtk.TreePath" /></returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetSortColumnId">
      <MemberSignature Language="C#" Value="public bool GetSortColumnId (out int sort_column_id, out Gtk.SortType order);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool GetSortColumnId(int32 sort_column_id, valuetype Gtk.SortType order) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="sort_column_id" Type="System.Int32&amp;" RefType="out" />
        <Parameter Name="order" Type="Gtk.SortType&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <param name="sort_column_id">a <see cref="T:System.Int32&amp;" />, gets filled with the column number that's currently used for sorting</param>
        <param name="order">a <see cref="T:Gtk.SortType&amp;" />, the current type of sort (ascending or descending)</param>
        <summary>Report on which column is currently being used to sort this ListStore.</summary>
        <returns>a <see cref="T:System.Boolean" />, false if the default sort column for this ListStore is being used, true if some other sort column is being used.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetStringFromIter">
      <MemberSignature Language="C#" Value="public string GetStringFromIter (Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance string GetStringFromIter(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Marshals the given <paramref name="iter" /> into a path string.</summary>
        <returns>a <see cref="T:System.String" /></returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetValist">
      <MemberSignature Language="C#" Value="public void GetValist (Gtk.TreeIter iter, IntPtr var_args);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void GetValist(valuetype Gtk.TreeIter iter, native int var_args) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="var_args" Type="System.IntPtr" />
      </Parameters>
      <Docs>
        <param name="iter">an object of type <see cref="T:Gtk.TreeIter" /></param>
        <param name="var_args">a <see cref="T:System.IntPtr" />, pointer to the va_list data structure of arguments (FIXME: clarify what va_lists look like)</param>
        <summary>Gets the values of child properties for the row pointed to by <paramref name="iter" />.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetValue">
      <MemberSignature Language="C#" Value="public object GetValue (Gtk.TreeIter iter, int column);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance object GetValue(valuetype Gtk.TreeIter iter, int32 column) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" />, the row to look in</param>
        <param name="column">a <see cref="T:System.Int32" />, the column number to look in</param>
        <summary>Gets the data from row <paramref name="iter" /> of column
	<paramref name="column" />.</summary>
        <returns>a <see cref="T:System.Object" /></returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GetValue">
      <MemberSignature Language="C#" Value="public void GetValue (Gtk.TreeIter iter, int column, ref GLib.Value value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void GetValue(valuetype Gtk.TreeIter iter, int32 column, valuetype GLib.Value value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="GLib.Value&amp;" RefType="ref" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" /></param>
        <param name="value">a <see cref="T:GLib.Value" /></param>
        <summary>Gets the value of row <paramref name="iter" /> of column 
	  <paramref name="column" /> and puts it in <paramref name="value" />.
	</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GType">
      <MemberSignature Language="C#" Value="public static GLib.GType GType { get; }" />
      <MemberSignature Language="ILAsm" Value=".property valuetype GLib.GType GType" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>GLib.GType</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>GType Property.</summary>
        <value>a <see cref="T:GLib.GType" /></value>
        <remarks>Returns the native <see cref="T:GLib.GType" /> value for <see cref="T:Gtk.ListStore" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="HasDefaultSortFunc">
      <MemberSignature Language="C#" Value="public bool HasDefaultSortFunc { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance bool HasDefaultSortFunc" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Find out whether this ListStore has a default sort function.</summary>
        <value>a <see cref="T:System.Boolean" />, true if there is a default
	sort function.</value>
        <remarks>To set a default sort function, use the <see cref="M:Gtk.ListStore.DefaultSortFunc" /> property.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Insert">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter Insert (int position);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype Gtk.TreeIter Insert(int32 position) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="position" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="position">a <see cref="T:System.Int32" /></param>
        <summary>Inserts a new row at position <paramref name="position" />.</summary>
        <returns>a <see cref="T:Gtk.TreeIter" /> pointing to the new row.</returns>
        <remarks> If <paramref name="position" /> is larger than the number 
	  of rows on the list, then the new row will be appended to the list. 
	  The row will be empty before this function is called. To set the
	  value of the new row, use <see cref="M:Gtk.ListStore.SetValue" />. 
	</remarks>
      </Docs>
    </Member>
    <Member MemberName="InsertAfter">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter InsertAfter (Gtk.TreeIter sibling);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype Gtk.TreeIter InsertAfter(valuetype Gtk.TreeIter sibling) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="sibling" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="sibling">a <see cref="T:Gtk.TreeIter" />, the row to insert before</param>
        <summary>
	  Inserts a new row after <paramref name="sibling" />. If 
	  <paramref name="sibling" /> is null, then the row will be appended 
	  to the end of the list. 
	</summary>
        <returns>a <see cref="T:Gtk.TreeIter" /> that points to the new row</returns>
        <remarks>
	  The row will be empty before this function is called. To set the
	  value of the new row, use <see cref="M:Gtk.ListStore.SetValue" />. 
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="InsertBefore">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter InsertBefore (Gtk.TreeIter sibling);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype Gtk.TreeIter InsertBefore(valuetype Gtk.TreeIter sibling) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="sibling" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="sibling">a <see cref="T:Gtk.TreeIter" />, the row to insert before</param>
        <summary>
	  Inserts a new row before <paramref name="sibling" />. If 
	  <paramref name="sibling" /> is null, then the row will be appended 
	  to the end of the list. 
	</summary>
        <returns>a <see cref="T:Gtk.TreeIter" /> that points to the new row</returns>
        <remarks>
	  The row will be empty before this function is called. To set the
	  value of the new row, use <see cref="M:Gtk.ListStore.SetValue" />. 
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="InsertWithValues">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter InsertWithValues (int position, object[] values);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype Gtk.TreeIter InsertWithValues(int32 position, object[] values) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="position" Type="System.Int32" />
        <Parameter Name="values" Type="System.Object[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="position">Insert position.</param>
        <param name="values">An array of column values to set.</param>
        <summary>Inserts a row into the store at a given position with column values.</summary>
        <returns>An iter pointing to the inserted row.</returns>
        <remarks>The values provided should be in column order.</remarks>
        <since version="Gtk# 2.8" />
      </Docs>
    </Member>
    <Member MemberName="InsertWithValuesv">
      <MemberSignature Language="C#" Value="public int InsertWithValuesv (Gtk.TreeIter iter, int position, GLib.Value values, int n_values);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance int32 InsertWithValuesv(valuetype Gtk.TreeIter iter, int32 position, valuetype GLib.Value values, int32 n_values) cil managed" />
      <MemberType>Method</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>System.Obsolete</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="position" Type="System.Int32" />
        <Parameter Name="values" Type="GLib.Value" />
        <Parameter Name="n_values" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="position">a <see cref="T:System.Int32" /></param>
        <param name="values">a <see cref="T:GLib.Value" /></param>
        <param name="n_values">a <see cref="T:System.Int32" /></param>
        <summary>To be added</summary>
        <returns>a <see cref="T:System.Int32" /></returns>
        <remarks>To be added</remarks>
        <since version="Gtk# 2.6" />
      </Docs>
    </Member>
    <Member MemberName="IterChildren">
      <MemberSignature Language="C#" Value="public bool IterChildren (out Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IterChildren(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <param name="iter">an object of type <see cref="T:Gtk.TreeIter" /></param>
        <summary>  
	  Sets <paramref name="iter" /> to point to the first child of <paramref name="parent" />.  
	</summary>
        <returns>an object of type <see cref="T:System.Boolean" />,
        <see langword="true" />, if <paramref name="child" /> has been set to the first child.</returns>
        <remarks>
          <para>
	  If <paramref name="parent" /> has no children,
	  <see langword="false" /> is returned and <paramref name="iter" /> is set to be invalid.  <paramref name="parent" /> will remain a valid
	  node after this function has been called.
	  </para>
          <para>
	    If <paramref name="parent" /> is <see langword="null" /> returns the first node, equivalent to
	    <literal>gtk_tree_model_get_iter_first (tree_model, iter);</literal></para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="IterChildren">
      <MemberSignature Language="C#" Value="public bool IterChildren (out Gtk.TreeIter iter, Gtk.TreeIter parent);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IterChildren(valuetype Gtk.TreeIter iter, valuetype Gtk.TreeIter parent) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="out" />
        <Parameter Name="parent" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">
          <see cref="T:Gtk.TreeIter" />, an object that will be set to point to the first child.</param>
        <param name="parent">a <see cref="T:Gtk.TreeIter" />, the parent row.</param>
        <summary>
        </summary>
        <returns>A <see cref="System.Boolean" />, true if <paramref name="iter" /> has children.</returns>
        <remarks>In general, this will return false, as ListStore isn't tree-shaped. However, if <paramref name="parent" /> is <see langword="null" />, <paramref name="iter" /> will return the list itself, since they're all children of the root.</remarks>
      </Docs>
    </Member>
    <Member MemberName="IterHasChild">
      <MemberSignature Language="C#" Value="public bool IterHasChild (Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IterHasChild(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Tests whether a given row has a child node.</summary>
        <returns>A <see cref="T:System:Boolean" />, always false for ListStores.</returns>
        <remarks>This is mandated by <see cref="T:Gtk.TreeModel" /></remarks>
      </Docs>
    </Member>
    <Member MemberName="IterIsValid">
      <MemberSignature Language="C#" Value="public bool IterIsValid (Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool IterIsValid(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Test whether <paramref name="iter" /> is valid for this ListStore.</summary>
        <returns>a <see cref="T:System.Boolean" />, true if <paramref name="iter" /> is valid.</returns>
        <remarks>WARNING: this method is slow and is only intended for
	debugging/testing purposes.</remarks>
      </Docs>
    </Member>
    <Member MemberName="IterNChildren">
      <MemberSignature Language="C#" Value="public int IterNChildren ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance int32 IterNChildren() cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
	  Returns the number of children that the toplevel node has. Is used to retrieve the number of rows in the <see cref="T:Gtk.ListStore" />.
	</summary>
        <returns>an object of type <see cref="T:System.Int32" />, the number of children of <paramref name="iter" />.</returns>
        <remarks>As a special case, if <paramref name="iter" /> is <see langword="null" />, then the number
	  of toplevel nodes is returned.</remarks>
      </Docs>
    </Member>
    <Member MemberName="IterNChildren">
      <MemberSignature Language="C#" Value="public int IterNChildren (Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance int32 IterNChildren(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Returns the number of children that <paramref name="iter" /> has. If <paramref name="iter" /> is null, as in the case of all ListStore objects, this will return the number of top-level items.</summary>
        <returns>a <see cref="System.Int32" /></returns>
        <remarks>FIXME: Why does ListStore.custom call gtk_tree_model_iter_n_children?</remarks>
      </Docs>
    </Member>
    <Member MemberName="IterNext">
      <MemberSignature Language="C#" Value="public bool IterNext (ref Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IterNext(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="ref" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Advances <paramref name="iter" /> to the next row.</summary>
        <returns>a <see cref="T:System.Boolean" /> for whether the operation succeeded.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="IterNthChild">
      <MemberSignature Language="C#" Value="public bool IterNthChild (out Gtk.TreeIter iter, int n);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IterNthChild(valuetype Gtk.TreeIter iter, int32 n) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="out" />
        <Parameter Name="n" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter&amp;" /></param>
        <param name="n">a <see cref="T:System.Int32" /></param>
        <summary>Sets <paramref name="iter" /> to be the child of this ListStore, using the given index.  The first index is 0.  If <paramref name="n" /> is too big, or this ListStore has no rows, <paramref name="iter" /> is set to an invalid iterator and false is returned.  For ListStore objects, the <paramref name="n" />th root node is set, since they don't have a tree-like structure.
</summary>
        <returns>a <see cref="T:System.Boolean" />, true if <paramref name="iter" /> has an <paramref name="n" />th child.</returns>
        <remarks>This is a custom binding for Gtk# which assumes that the current object is the parent. An alternate invocation form that parallels the C API is available.</remarks>
      </Docs>
    </Member>
    <Member MemberName="IterNthChild">
      <MemberSignature Language="C#" Value="public bool IterNthChild (out Gtk.TreeIter iter, Gtk.TreeIter parent, int n);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IterNthChild(valuetype Gtk.TreeIter iter, valuetype Gtk.TreeIter parent, int32 n) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="out" />
        <Parameter Name="parent" Type="Gtk.TreeIter" />
        <Parameter Name="n" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="parent">To be added.</param>
        <param name="n">a <see cref="T:System.Int32" /></param>
        <summary>Sets <paramref name="iter" /> to be the child of <paramref name="parent" />, using the given index.  The first index is 0.  If <paramref name="n" /> is too big, or <paramref name="parent" /> has no children, <paramref name="iter" /> is set to an invalid iterator and false is returned.  <paramref name="parent" /> will remain a valid node after this function has been called.  As a special case, if <paramref name="parent" /> is <see langword="null" />, then the <paramref name="n" />th root node is set.
</summary>
        <returns>a <see cref="T:System.Boolean" />, true if <paramref name="parent" /> has an <paramref name="n" />th child.</returns>
        <remarks>This invocation form is closer to the underlying C API, but it's probably less useful for most C# purposes.</remarks>
      </Docs>
    </Member>
    <Member MemberName="IterParent">
      <MemberSignature Language="C#" Value="public bool IterParent (out Gtk.TreeIter iter, Gtk.TreeIter child);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IterParent(valuetype Gtk.TreeIter iter, valuetype Gtk.TreeIter child) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="out" />
        <Parameter Name="child" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter&amp;" /> to set to point to the row.</param>
        <param name="child">a <see cref="T:Gtk.TreeIter" />, the child row whose parent we want to get</param>
        <summary>Gets the parent row of <paramref name="child" />.</summary>
        <returns>A <see cref="T:System.Boolean" />, true if the parent exists. Since ListStore objects aren't tree-shaped, this will always return false.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="IterPrevious">
      <MemberSignature Language="C#" Value="public bool IterPrevious (ref Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool IterPrevious(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="ref" />
      </Parameters>
      <Docs>
        <param name="iter">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
        <since version="Gtk# 3.0" />
      </Docs>
    </Member>
    <Member MemberName="MoveAfter">
      <MemberSignature Language="C#" Value="public void MoveAfter (Gtk.TreeIter iter, Gtk.TreeIter position);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void MoveAfter(valuetype Gtk.TreeIter iter, valuetype Gtk.TreeIter position) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="position" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="position">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Move the row pointed to by <paramref name="iter" /> to the
	  position after <paramref name="position" />. If 
	  <paramref name="position" /> is <see langword="null" />, 
	  <paramref name="iter" /> will be moved to point to the start
	  of the list.
	</summary>
        <remarks>This only works in unsorted stores.</remarks>
      </Docs>
    </Member>
    <Member MemberName="MoveBefore">
      <MemberSignature Language="C#" Value="public void MoveBefore (Gtk.TreeIter iter, Gtk.TreeIter position);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void MoveBefore(valuetype Gtk.TreeIter iter, valuetype Gtk.TreeIter position) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="position" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="position">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Move the row pointed to by <paramref name="iter" /> to the
	  position before <paramref name="position" />. If 
	  <paramref name="position" /> is <see langword="null" />, 
	  <paramref name="iter" /> will be moved to point to the end
	  of the list.
	</summary>
        <remarks>This only works in unsorted stores.</remarks>
      </Docs>
    </Member>
    <Member MemberName="NColumns">
      <MemberSignature Language="C#" Value="public int NColumns { get; }" />
      <MemberSignature Language="ILAsm" Value=".property instance int32 NColumns" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>The number of columns in this ListStore.</summary>
        <value>A <see cref="System.Int32" /></value>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="OnRowChanged">
      <MemberSignature Language="C#" Value="protected virtual void OnRowChanged (Gtk.TreePath path, Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnRowChanged(class Gtk.TreePath path, valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.DefaultSignalHandler(ConnectionMethod="OverrideRowChanged", Type=typeof(Gtk.ListStore))</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /></param>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Default handler for the <see cref="M:Gtk.ListStore.RowChanged" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.ListStore.RowChanged" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnRowDeleted">
      <MemberSignature Language="C#" Value="protected virtual void OnRowDeleted (Gtk.TreePath path);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnRowDeleted(class Gtk.TreePath path) cil managed" />
      <MemberType>Method</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.DefaultSignalHandler(ConnectionMethod="OverrideRowDeleted", Type=typeof(Gtk.ListStore))</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /></param>
        <summary>Default handler for the <see cref="M:Gtk.ListStore.RowDeleted" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.ListStore.RowDeleted" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnRowHasChildToggled">
      <MemberSignature Language="C#" Value="protected virtual void OnRowHasChildToggled (Gtk.TreePath path, Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnRowHasChildToggled(class Gtk.TreePath path, valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.DefaultSignalHandler(ConnectionMethod="OverrideRowHasChildToggled", Type=typeof(Gtk.ListStore))</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /></param>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Default handler for the <see cref="M:Gtk.ListStore.RowHasChildToggled" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.ListStore.RowHasChildToggled" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnRowInserted">
      <MemberSignature Language="C#" Value="protected virtual void OnRowInserted (Gtk.TreePath path, Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnRowInserted(class Gtk.TreePath path, valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.DefaultSignalHandler(ConnectionMethod="OverrideRowInserted", Type=typeof(Gtk.ListStore))</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /></param>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Default handler for the <see cref="M:Gtk.ListStore.RowInserted" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.ListStore.RowInserted" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnRowsReordered">
      <MemberSignature Language="C#" Value="protected virtual void OnRowsReordered (Gtk.TreePath path, Gtk.TreeIter iter, int[] new_order);" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnRowsReordered(class Gtk.TreePath path, valuetype Gtk.TreeIter iter, int32[] new_order) cil managed" />
      <MemberType>Method</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.DefaultSignalHandler(ConnectionMethod="OverrideRowsReordered", Type=typeof(Gtk.ListStore))</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="new_order" Type="System.Int32[]" />
      </Parameters>
      <Docs>
        <param name="path">Path to the reordered parent node.</param>
        <param name="iter">Iter corresponding to the reordered parent node.</param>
        <param name="new_order">An array of the old indices.</param>
        <summary>Default handler for the RowsReordered event.</summary>
        <remarks />
        <since version="Gtk# 2.10" />
      </Docs>
    </Member>
    <Member MemberName="OnSortColumnChanged">
      <MemberSignature Language="C#" Value="protected virtual void OnSortColumnChanged ();" />
      <MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnSortColumnChanged() cil managed" />
      <MemberType>Method</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.DefaultSignalHandler(ConnectionMethod="OverrideSortColumnChanged", Type=typeof(Gtk.ListStore))</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.ListStore.SortColumnChanged" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.ListStore.SortColumnChanged" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Prepend">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter Prepend ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype Gtk.TreeIter Prepend() cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Adds a new row to the beginning of the list.</summary>
        <returns>a <see cref="T:Gtk.TreeIter" /> pointing to the new row.
	</returns>
        <remarks>
	  The row will be empty before this function is called. To set the
	  value of the new row, use <see cref="M:Gtk.ListStore.SetValue" />. 
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="RefNode">
      <MemberSignature Language="C#" Value="public void RefNode (Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void RefNode(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Lets the ListStore reference the row pointed to by <paramref name="iter" />. </summary>
        <remarks>
          <para>This function is primarily meant as a way for views to let caching model know when nodes are being displayed (and hence, whether or not to cache that node.)  For example, a file-system based model would not want to keep the entire file-hierarchy in memory, just the sections that are currently being displayed by every current view.</para>
          <para>A model should be expected to be able to get an iter independent of its reffed state.</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="Remove">
      <MemberSignature Language="C#" Value="public bool Remove (ref Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Remove(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter&amp;" RefType="ref" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Removes a row from the store.</summary>
        <returns>a <see cref="T:System.Boolean" /></returns>
        <remarks>After being removed, <paramref name="iter" /> is set to be the next valid row, or invalidated if it pointed to the last row in the store.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Reorder">
      <MemberSignature Language="C#" Value="public void Reorder (int[] new_order);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Reorder(int32[] new_order) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="new_order" Type="System.Int32[]" />
      </Parameters>
      <Docs>
        <param name="new_order">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
        <since version="Gtk# 3.0" />
      </Docs>
    </Member>
    <Member MemberName="RowChanged">
      <MemberSignature Language="C#" Value="public event Gtk.RowChangedHandler RowChanged;" />
      <MemberSignature Language="ILAsm" Value=".event class Gtk.RowChangedHandler RowChanged" />
      <MemberType>Event</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("row-changed")</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>Gtk.RowChangedHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when a row has changed.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="RowDeleted">
      <MemberSignature Language="C#" Value="public event Gtk.RowDeletedHandler RowDeleted;" />
      <MemberSignature Language="ILAsm" Value=".event class Gtk.RowDeletedHandler RowDeleted" />
      <MemberType>Event</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("row-deleted")</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>Gtk.RowDeletedHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when a row is deleted.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="RowDraggable">
      <MemberSignature Language="C#" Value="public bool RowDraggable (Gtk.TreePath path);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool RowDraggable(class Gtk.TreePath path) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="path" Type="Gtk.TreePath" />
      </Parameters>
      <Docs>
        <param name="path">a <see cref="T:Gtk.TreePath" /></param>
        <summary>Returns whether or not a given row can be dragged.</summary>
        <returns>A boolean, true if the row is draggable.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="RowDropPossible">
      <MemberSignature Language="C#" Value="public bool RowDropPossible (Gtk.TreePath dest_path, Gtk.SelectionData selection_data);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool RowDropPossible(class Gtk.TreePath dest_path, class Gtk.SelectionData selection_data) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="dest_path" Type="Gtk.TreePath" />
        <Parameter Name="selection_data" Type="Gtk.SelectionData" />
      </Parameters>
      <Docs>
        <param name="dest_path">A <see cref="T:Gtk.TreePath" /></param>
        <param name="selection_data">A <see cref="T:Gtk.SelectionData" /></param>
        <summary>Returns true if the row at <paramref name="dest_path" /> can
	have <paramref name="selection_data" /> dropped on it.</summary>
        <returns>A boolean.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="RowHasChildToggled">
      <MemberSignature Language="C#" Value="public event Gtk.RowHasChildToggledHandler RowHasChildToggled;" />
      <MemberSignature Language="ILAsm" Value=".event class Gtk.RowHasChildToggledHandler RowHasChildToggled" />
      <MemberType>Event</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("row-has-child-toggled")</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>Gtk.RowHasChildToggledHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when the display of a given row's children is toggled.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="RowInserted">
      <MemberSignature Language="C#" Value="public event Gtk.RowInsertedHandler RowInserted;" />
      <MemberSignature Language="ILAsm" Value=".event class Gtk.RowInsertedHandler RowInserted" />
      <MemberType>Event</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("row-inserted")</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>Gtk.RowInsertedHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when a row of data is inserted.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="RowsReordered">
      <MemberSignature Language="C#" Value="public event Gtk.RowsReorderedHandler RowsReordered;" />
      <MemberSignature Language="ILAsm" Value=".event class Gtk.RowsReorderedHandler RowsReordered" />
      <MemberType>Event</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("rows_reordered")</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>Gtk.RowsReorderedHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when the order of rows has changed.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="SetSortColumnId">
      <MemberSignature Language="C#" Value="public void SetSortColumnId (int sort_column_id, Gtk.SortType order);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetSortColumnId(int32 sort_column_id, valuetype Gtk.SortType order) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="sort_column_id" Type="System.Int32" />
        <Parameter Name="order" Type="Gtk.SortType" />
      </Parameters>
      <Docs>
        <param name="sort_column_id">A <see cref="T:System.Int32" />, the column number to sort by.</param>
        <param name="order">A <see cref="T:Gtk.SortType" /></param>
        <summary>Sets the column number to sort by.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="SetSortFunc">
      <MemberSignature Language="C#" Value="public void SetSortFunc (int sort_column_id, Gtk.TreeIterCompareFunc sort_func);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetSortFunc(int32 sort_column_id, class Gtk.TreeIterCompareFunc sort_func) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="sort_column_id" Type="System.Int32" />
        <Parameter Name="sort_func" Type="Gtk.TreeIterCompareFunc" />
      </Parameters>
      <Docs>
        <param name="sort_column_id">A <see cref="T:System.Int32" /> for the column number.</param>
        <param name="sort_func">A <see cref="T:Gtk.TreeIterCompareFunc" /></param>
        <summary>Sets a sort function to be used for the column <paramref name="sort_column_id" />.</summary>
        <remarks />
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="SetValist">
      <MemberSignature Language="C#" Value="public void SetValist (Gtk.TreeIter iter, IntPtr var_args);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetValist(valuetype Gtk.TreeIter iter, native int var_args) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="var_args" Type="System.IntPtr" />
      </Parameters>
      <Docs>
        <param name="iter">an object of type <see cref="T:Gtk.TreeIter" /></param>
        <param name="var_args">a <see cref="T:System.IntPtr" />, pointer to the va_list data structure of arguments (FIXME: clarify what va_lists look like)</param>
        <summary>Sets the values of child properties for the row pointed to by <paramref name="iter" />.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="SetValue">
      <MemberSignature Language="C#" Value="public void SetValue (Gtk.TreeIter iter, int column, GLib.Value value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetValue(valuetype Gtk.TreeIter iter, int32 column, valuetype GLib.Value value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="GLib.Value" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" />, the column number</param>
        <param name="value">a <see cref="GLib.Value" /></param>
        <summary>Sets the value of the specified column in the row pointed by <paramref name="iter" />.</summary>
        <remarks>The type of specified column must be a <see cref="T:GLib.Value" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetValue">
      <MemberSignature Language="C#" Value="public void SetValue (Gtk.TreeIter iter, int column, bool value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetValue(valuetype Gtk.TreeIter iter, int32 column, bool value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" /></param>
        <param name="value">a <see cref="T:System.Boolean" /></param>
        <summary>Sets the value of the specified column in the row pointed by iter.</summary>
        <remarks>The type of specified column must be a <see cref="T:System.Boolean" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetValue">
      <MemberSignature Language="C#" Value="public void SetValue (Gtk.TreeIter iter, int column, double value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetValue(valuetype Gtk.TreeIter iter, int32 column, float64 value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="System.Double" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" /></param>
        <param name="value">a <see cref="T:System.Double" /></param>
        <summary>Sets the value of the specified column in the row pointed by iter.</summary>
        <remarks>The type of specified column must be a <see cref="T:System.Double" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetValue">
      <MemberSignature Language="C#" Value="public void SetValue (Gtk.TreeIter iter, int column, int value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetValue(valuetype Gtk.TreeIter iter, int32 column, int32 value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" /></param>
        <param name="value">a <see cref="T:System.Int32" /></param>
        <summary>Sets the value of the specified column in the row pointed by iter.</summary>
        <remarks>The type of specified column must be an <see cref="T:System.Int32" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetValue">
      <MemberSignature Language="C#" Value="public void SetValue (Gtk.TreeIter iter, int column, object value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetValue(valuetype Gtk.TreeIter iter, int32 column, object value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" /></param>
        <param name="value">a <see cref="T:System.Object" /></param>
        <summary>Sets the value of the specified column in the row pointed by iter.</summary>
        <remarks>The type of specified column must be an <see cref="T:System.Object" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetValue">
      <MemberSignature Language="C#" Value="public void SetValue (Gtk.TreeIter iter, int column, float value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetValue(valuetype Gtk.TreeIter iter, int32 column, float32 value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="System.Single" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" /></param>
        <param name="value">a <see cref="T:System.Single" /></param>
        <summary>Sets the value of the specified column in the row pointed by iter.</summary>
        <remarks>The type of specified column must be an <see cref="T:System.Single" /></remarks>
      </Docs>
    </Member>
    <Member MemberName="SetValue">
      <MemberSignature Language="C#" Value="public void SetValue (Gtk.TreeIter iter, int column, string value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetValue(valuetype Gtk.TreeIter iter, int32 column, string value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" /></param>
        <param name="value">a <see cref="T:System.String" /></param>
        <summary>Sets the value of the specified column in the row pointed by iter.</summary>
        <remarks>The type of specified column must be a <see cref="T:System.String" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetValue">
      <MemberSignature Language="C#" Value="public void SetValue (Gtk.TreeIter iter, int column, uint value);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetValue(valuetype Gtk.TreeIter iter, int32 column, unsigned int32 value) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="column" Type="System.Int32" />
        <Parameter Name="value" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="column">a <see cref="T:System.Int32" /></param>
        <param name="value">a <see cref="T:System.UInt32" /></param>
        <summary>Sets the value of the specified column in the row pointed by iter.</summary>
        <remarks>The type of specified column must be an <see cref="T:System.UInt32" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetValues">
      <MemberSignature Language="C#" Value="public void SetValues (Gtk.TreeIter iter, object[] values);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetValues(valuetype Gtk.TreeIter iter, object[] values) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
        <Parameter Name="values" Type="System.Object[]">
          <Attributes>
            <Attribute>
              <AttributeName>System.ParamArray</AttributeName>
            </Attribute>
          </Attributes>
        </Parameter>
      </Parameters>
      <Docs>
        <param name="iter">Update position.</param>
        <param name="values">An array of column values to set.</param>
        <summary>Sets the column values for a given row.</summary>
        <remarks>The values provided must be in column order.</remarks>
        <since version="Gtk# 2.12" />
      </Docs>
    </Member>
    <Member MemberName="SortColumnChanged">
      <MemberSignature Language="C#" Value="public event EventHandler SortColumnChanged;" />
      <MemberSignature Language="ILAsm" Value=".event class System.EventHandler SortColumnChanged" />
      <MemberType>Event</MemberType>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("sort-column-changed")</AttributeName>
        </Attribute>
      </Attributes>
      <ReturnValue>
        <ReturnType>System.EventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when the sorting column has changed.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="Swap">
      <MemberSignature Language="C#" Value="public void Swap (Gtk.TreeIter a, Gtk.TreeIter b);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Swap(valuetype Gtk.TreeIter a, valuetype Gtk.TreeIter b) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="a" Type="Gtk.TreeIter" />
        <Parameter Name="b" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="a">a <see cref="T:Gtk.TreeIter" /></param>
        <param name="b">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Swaps rows a and b in the store.</summary>
        <remarks>This is only works in unsorted stores.</remarks>
      </Docs>
    </Member>
    <Member MemberName="UnrefNode">
      <MemberSignature Language="C#" Value="public void UnrefNode (Gtk.TreeIter iter);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void UnrefNode(valuetype Gtk.TreeIter iter) cil managed" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="iter">a <see cref="T:Gtk.TreeIter" /></param>
        <summary>Lets the ListStore unref the row at <paramref name="iter" />.</summary>
        <remarks>
          <para>This is an optional method 
	    for models to implement.  To be more specific, models may ignore 
	    this call as it exists primarily for performance reasons.</para>
          <para>For more information on what this means, see 
	    <see cref="M:Gtk.ListStore.RefNode" />. Please note that 
	    nodes that are deleted are not unreffed.</para>
        </remarks>
      </Docs>
    </Member>
  </Members>
</Type>
