/// <summary> /// Unselects the specified row. /// </summary> /// <param name="row">Row to unselect.</param> public void UnselectRow(ListBoxRow row) { row.IsSelected = false; m_SelectedRows.Remove(row); if (RowUnselected != null) { RowUnselected.Invoke(this, new ItemSelectedEventArgs(row)); } }
/// <summary> /// Adds a new row. /// </summary> /// <param name="label">Row text.</param> /// <param name="name">Internal control name.</param> /// <param name="UserData">User data for newly created row</param> /// <returns>Newly created control.</returns> public ListBoxRow AddRow(string label, string name, Object UserData) { ListBoxRow row = new ListBoxRow(this) { Dock = Dock.Top, Text = label, Name = name, UserData = UserData }; row.Selected += OnRowSelected; return(row); }
/// <summary> /// Adds a new row. /// </summary> /// <param name="label">Row text.</param> /// <param name="name">Internal control name.</param> /// <param name="UserData">User data for newly created row</param> /// <returns>Newly created control.</returns> public ListBoxRow AddRow(string label, string name, Object UserData) { ListBoxRow row = new ListBoxRow(this); m_Table.AddRow(row); row.SetCellText(0, label); row.Name = name; row.UserData = UserData; row.Selected += OnRowSelected; m_Table.SizeToContents(Width); return(row); }
/// <summary> /// Slelects the specified row. /// </summary> /// <param name="control">Row to select.</param> /// <param name="clearOthers">Determines whether to deselect previously selected rows.</param> public void SelectRow(ControlBase control, bool clearOthers = false) { if (!AllowMultiSelect || clearOthers) { UnselectAll(); } ListBoxRow row = control as ListBoxRow; if (row == null) { return; } // TODO: make sure this is one of our rows! row.IsSelected = true; m_SelectedRows.Add(row); if (RowSelected != null) { RowSelected.Invoke(this, new ItemSelectedEventArgs(row)); } }
/// <summary> /// Handler for the row selection event. /// </summary> /// <param name="control">Event source.</param> protected virtual void OnRowSelected(ControlBase control, ItemSelectedEventArgs args) { // [omeg] changed default behavior bool clear = false;// !InputHandler.InputHandler.IsShiftDown; ListBoxRow row = args.SelectedItem as ListBoxRow; if (row == null) { return; } if (row.IsSelected) { if (IsToggle) { UnselectRow(row); } } else { SelectRow(row, clear); } }