Search Results for

    Show / Hide Table of Contents

    Class ListView

    ListView View renders a scrollable list of data where each item can be activated to perform an action.
    Inheritance
    System.Object
    Responder
    View
    ListView
    Implements
    System.IDisposable
    System.ComponentModel.ISupportInitializeNotification
    System.ComponentModel.ISupportInitialize
    Inherited Members
    View.Added
    View.Removed
    View.Enter
    View.Leave
    View.MouseEnter
    View.MouseLeave
    View.MouseClick
    View.CanFocusChanged
    View.EnabledChanged
    View.VisibleChanged
    View.HotKeyChanged
    View.HotKey
    View.HotKeySpecifier
    View.Shortcut
    View.ShortcutTag
    View.ShortcutAction
    View.Data
    View.Driver
    View.Subviews
    View.TabIndexes
    View.TabIndex
    View.TabStop
    View.CanFocus
    View.Id
    View.IsCurrentTop
    View.WantMousePositionReports
    View.WantContinuousButtonPressed
    View.Frame
    View.LayoutStyle
    View.Bounds
    View.X
    View.Y
    View.Width
    View.Height
    View.TextFormatter
    View.SuperView
    View.SetNeedsDisplay()
    View.ClearLayoutNeeded()
    View.SetNeedsDisplay(Rect)
    View.SetChildNeedsDisplay()
    View.Add(View)
    View.Add(View[])
    View.RemoveAll()
    View.Remove(View)
    View.BringSubviewToFront(View)
    View.SendSubviewToBack(View)
    View.SendSubviewBackwards(View)
    View.BringSubviewForward(View)
    View.Clear()
    View.Clear(Rect)
    View.ScreenToView(Int32, Int32)
    View.ClipToBounds()
    View.SetClip(Rect)
    View.DrawFrame(Rect, Int32, Boolean)
    View.DrawHotString(ustring, Attribute, Attribute)
    View.DrawHotString(ustring, Boolean, ColorScheme)
    View.Move(Int32, Int32, Boolean)
    View.HasFocus
    View.OnAdded(View)
    View.OnRemoved(View)
    View.Focused
    View.MostFocused
    View.ColorScheme
    View.AddRune(Int32, Int32, Rune)
    View.ClearNeedsDisplay()
    View.DrawContent
    View.OnDrawContent(Rect)
    View.DrawContentComplete
    View.OnDrawContentComplete(Rect)
    View.SetFocus()
    View.KeyPress
    View.InvokeKeybindings(KeyEvent)
    View.AddKeyBinding(Key, Command)
    View.ReplaceKeyBinding(Key, Key)
    View.ContainsKeyBinding(Key)
    View.ClearKeybindings()
    View.ClearKeybinding(Key)
    View.ClearKeybinding(Command)
    View.AddCommand(Command, Func<Nullable<Boolean>>)
    View.GetSupportedCommands()
    View.GetKeyFromCommand(Command)
    View.ProcessHotKey(KeyEvent)
    View.ProcessColdKey(KeyEvent)
    View.KeyDown
    View.OnKeyDown(KeyEvent)
    View.KeyUp
    View.OnKeyUp(KeyEvent)
    View.EnsureFocus()
    View.FocusFirst()
    View.FocusLast()
    View.FocusPrev()
    View.FocusNext()
    View.LayoutStarted
    View.LayoutComplete
    View.Initialized
    View.LayoutSubviews()
    View.Text
    View.AutoSize
    View.TextAlignment
    View.VerticalTextAlignment
    View.TextDirection
    View.IsInitialized
    View.Enabled
    View.Visible
    View.Border
    View.ToString()
    View.OnMouseEnter(MouseEvent)
    View.OnMouseLeave(MouseEvent)
    View.OnMouseEvent(MouseEvent)
    View.OnMouseClick(View.MouseEventArgs)
    View.OnCanFocusChanged()
    View.OnEnabledChanged()
    View.OnVisibleChanged()
    View.Dispose(Boolean)
    View.BeginInit()
    View.EndInit()
    View.SetWidth(Int32, Int32)
    View.SetHeight(Int32, Int32)
    View.GetCurrentWidth(Int32)
    View.GetCurrentHeight(Int32)
    View.GetNormalColor()
    View.GetTopSuperView()
    Responder.Dispose()
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    Namespace: Terminal.Gui
    Assembly: Terminal.Gui.dll
    Syntax
    public class ListView : View, IDisposable, ISupportInitializeNotification, ISupportInitialize
    Remarks

    The ListView displays lists of data and allows the user to scroll through the data. Items in the can be activated firing an event (with the ENTER key or a mouse double-click). If the AllowsMarking property is true, elements of the list can be marked by the user.

    By default ListView uses System.Object.ToString() to render the items of any System.Collections.IList object (e.g. arrays, System.Collections.Generic.List<T>, and other collections). Alternatively, an object that implements the IListDataSource interface can be provided giving full control of what is rendered.

    ListView can display any object that implements the System.Collections.IList interface. System.String values are converted into NStack.ustring values before rendering, and other values are converted into System.String by calling System.Object.ToString() and then converting to NStack.ustring .

    To change the contents of the ListView, set the Source property (when providing custom rendering via IListDataSource) or call SetSource(IList) an System.Collections.IList is being used.

    When AllowsMarking is set to true the rendering will prefix the rendered items with [x] or [ ] and bind the SPACE key to toggle the selection. To implement a different marking style set AllowsMarking to false and implement custom rendering.

    Constructors

    ListView()

    Initializes a new instance of ListView. Set the Source property to display something.
    Declaration
    public ListView()

    ListView(IList)

    Initializes a new instance of ListView that will display the contents of the object implementing the System.Collections.IList interface, with relative positioning.
    Declaration
    public ListView(IList source)
    Parameters
    Type Name Description
    System.Collections.IList source An System.Collections.IList data source, if the elements are strings or ustrings, the string is rendered, otherwise the ToString() method is invoked on the result.

    ListView(IListDataSource)

    Initializes a new instance of ListView that will display the provided data source, using relative positioning.
    Declaration
    public ListView(IListDataSource source)
    Parameters
    Type Name Description
    IListDataSource source IListDataSource object that provides a mechanism to render the data. The number of elements on the collection should not change, if you must change, set the "Source" property to reset the internal settings of the ListView.

    ListView(Rect, IList)

    Initializes a new instance of ListView that will display the contents of the object implementing the System.Collections.IList interface with an absolute position.
    Declaration
    public ListView(Rect rect, IList source)
    Parameters
    Type Name Description
    Rect rect Frame for the listview.
    System.Collections.IList source An IList data source, if the elements of the IList are strings or ustrings, the string is rendered, otherwise the ToString() method is invoked on the result.

    ListView(Rect, IListDataSource)

    Initializes a new instance of ListView with the provided data source and an absolute position
    Declaration
    public ListView(Rect rect, IListDataSource source)
    Parameters
    Type Name Description
    Rect rect Frame for the listview.
    IListDataSource source IListDataSource object that provides a mechanism to render the data. The number of elements on the collection should not change, if you must change, set the "Source" property to reset the internal settings of the ListView.

    Properties

    AllowsMarking

    Gets or sets whether this ListView allows items to be marked.
    Declaration
    public bool AllowsMarking { get; set; }
    Property Value
    Type Description
    System.Boolean true if allows marking elements of the list; otherwise, false.
    Remarks
    If set to true, ListView will render items marked items with "[x]", and unmarked items with "[ ]" spaces. SPACE key will toggle marking.

    AllowsMultipleSelection

    If set to true allows more than one item to be selected. If false only allow one item selected.
    Declaration
    public bool AllowsMultipleSelection { get; set; }
    Property Value
    Type Description
    System.Boolean

    LeftItem

    Gets or sets the left column where the item start to be displayed at on the ListView.
    Declaration
    public int LeftItem { get; set; }
    Property Value
    Type Description
    System.Int32 The left position.

    Maxlength

    Gets the widest item.
    Declaration
    public int Maxlength { get; }
    Property Value
    Type Description
    System.Int32

    SelectedItem

    Gets or sets the index of the currently selected item.
    Declaration
    public int SelectedItem { get; set; }
    Property Value
    Type Description
    System.Int32 The selected item.

    Source

    Gets or sets the IListDataSource backing this ListView, enabling custom rendering.
    Declaration
    public IListDataSource Source { get; set; }
    Property Value
    Type Description
    IListDataSource The source.
    Remarks
    Use SetSource(IList) to set a new System.Collections.IList source.

    TopItem

    Gets or sets the item that is displayed at the top of the ListView.
    Declaration
    public int TopItem { get; set; }
    Property Value
    Type Description
    System.Int32 The top item.

    Methods

    AllowsAll()

    Prevents marking if it's not allowed mark and if it's not allows multiple selection.
    Declaration
    public virtual bool AllowsAll()
    Returns
    Type Description
    System.Boolean

    MarkUnmarkRow()

    Marks an unmarked row.
    Declaration
    public virtual bool MarkUnmarkRow()
    Returns
    Type Description
    System.Boolean

    MouseEvent(MouseEvent)

    Declaration
    public override bool MouseEvent(MouseEvent me)
    Parameters
    Type Name Description
    MouseEvent me
    Returns
    Type Description
    System.Boolean
    Overrides
    Responder.MouseEvent(MouseEvent)

    MoveDown()

    Moves the selected item index to the next row.
    Declaration
    public virtual bool MoveDown()
    Returns
    Type Description
    System.Boolean

    MoveEnd()

    Moves the selected item index to the last row.
    Declaration
    public virtual bool MoveEnd()
    Returns
    Type Description
    System.Boolean

    MoveHome()

    Moves the selected item index to the first row.
    Declaration
    public virtual bool MoveHome()
    Returns
    Type Description
    System.Boolean

    MovePageDown()

    Moves the selected item index to the previous page.
    Declaration
    public virtual bool MovePageDown()
    Returns
    Type Description
    System.Boolean

    MovePageUp()

    Moves the selected item index to the next page.
    Declaration
    public virtual bool MovePageUp()
    Returns
    Type Description
    System.Boolean

    MoveUp()

    Moves the selected item index to the previous row.
    Declaration
    public virtual bool MoveUp()
    Returns
    Type Description
    System.Boolean

    OnEnter(View)

    Declaration
    public override bool OnEnter(View view)
    Parameters
    Type Name Description
    View view
    Returns
    Type Description
    System.Boolean
    Overrides
    View.OnEnter(View)

    OnLeave(View)

    Declaration
    public override bool OnLeave(View view)
    Parameters
    Type Name Description
    View view
    Returns
    Type Description
    System.Boolean
    Overrides
    View.OnLeave(View)

    OnOpenSelectedItem()

    Invokes the OnOpenSelectedItem event if it is defined.
    Declaration
    public virtual bool OnOpenSelectedItem()
    Returns
    Type Description
    System.Boolean

    OnRowRender(ListViewRowEventArgs)

    Virtual method that will invoke the RowRender.
    Declaration
    public virtual void OnRowRender(ListViewRowEventArgs rowEventArgs)
    Parameters
    Type Name Description
    ListViewRowEventArgs rowEventArgs

    OnSelectedChanged()

    Invokes the SelectedChanged event if it is defined.
    Declaration
    public virtual bool OnSelectedChanged()
    Returns
    Type Description
    System.Boolean

    PositionCursor()

    Declaration
    public override void PositionCursor()
    Overrides
    View.PositionCursor()

    ProcessKey(KeyEvent)

    Declaration
    public override bool ProcessKey(KeyEvent kb)
    Parameters
    Type Name Description
    KeyEvent kb
    Returns
    Type Description
    System.Boolean
    Overrides
    View.ProcessKey(KeyEvent)

    Redraw(Rect)

    Declaration
    public override void Redraw(Rect bounds)
    Parameters
    Type Name Description
    Rect bounds
    Overrides
    View.Redraw(Rect)

    ScrollDown(Int32)

    Scrolls the view down.
    Declaration
    public virtual bool ScrollDown(int lines)
    Parameters
    Type Name Description
    System.Int32 lines Number of lines to scroll down.
    Returns
    Type Description
    System.Boolean

    ScrollLeft(Int32)

    Scrolls the view left.
    Declaration
    public virtual bool ScrollLeft(int cols)
    Parameters
    Type Name Description
    System.Int32 cols Number of columns to scroll left.
    Returns
    Type Description
    System.Boolean

    ScrollRight(Int32)

    Scrolls the view right.
    Declaration
    public virtual bool ScrollRight(int cols)
    Parameters
    Type Name Description
    System.Int32 cols Number of columns to scroll right.
    Returns
    Type Description
    System.Boolean

    ScrollUp(Int32)

    Scrolls the view up.
    Declaration
    public virtual bool ScrollUp(int lines)
    Parameters
    Type Name Description
    System.Int32 lines Number of lines to scroll up.
    Returns
    Type Description
    System.Boolean

    SetSource(IList)

    Sets the source of the ListView to an System.Collections.IList.
    Declaration
    public void SetSource(IList source)
    Parameters
    Type Name Description
    System.Collections.IList source
    Remarks
    Use the Source property to set a new IListDataSource source and use custome rendering.

    SetSourceAsync(IList)

    Sets the source to an System.Collections.IList value asynchronously.
    Declaration
    public Task SetSourceAsync(IList source)
    Parameters
    Type Name Description
    System.Collections.IList source
    Returns
    Type Description
    System.Threading.Tasks.Task An item implementing the IList interface.
    Remarks
    Use the Source property to set a new IListDataSource source and use custom rendering.

    Events

    OpenSelectedItem

    This event is raised when the user Double Clicks on an item or presses ENTER to open the selected item.
    Declaration
    public event Action<ListViewItemEventArgs> OpenSelectedItem
    Event Type
    Type Description
    System.Action<ListViewItemEventArgs>

    RowRender

    This event is invoked when this ListView is being drawn before rendering.
    Declaration
    public event Action<ListViewRowEventArgs> RowRender
    Event Type
    Type Description
    System.Action<ListViewRowEventArgs>

    SelectedItemChanged

    This event is raised when the selected item in the ListView has changed.
    Declaration
    public event Action<ListViewItemEventArgs> SelectedItemChanged
    Event Type
    Type Description
    System.Action<ListViewItemEventArgs>

    Implements

    System.IDisposable
    System.ComponentModel.ISupportInitializeNotification
    System.ComponentModel.ISupportInitialize
    In This Article
    Back to top Generated by DocFX