Skip to content

SelectItemForm

Radu Martin edited this page Apr 14, 2017 · 46 revisions

SelectItemForm is a dialogue form which is using for select an item from lists such as IEnumerable or DataTable. Also, the SelectItemForm has ability to search items by criteria.

SelectItemForm

Using the SelectItemForm

// items = Created typed _DataTable_ or _IEnumerable_ with data
using (var form = SelectItemForm.CreateFormWithoutColumns(items, "Title"))
{
    form.dataGrid.AddTextColumn("ColumnName#1", "ColumnHeader#1");
    form.dataGrid.AddTextColumn("ColumnName#2", "ColumnHeader#2");
    form.dataGrid.AddTextColumn("ColumnName#3", "ColumnHeader#3");
    form.ShowDialog(); 
}

In additional, SelectItemForm provides methods for setting text on Header and Footer:

public void SetHeaderText(string Text)

public void SetFooterText(string Text)

The static methods

The main static method for selecting an item from IEnumerable:

public static T GetSelectedRow<T>(
                    string Text, string HeaderText, 
                    IEnumerable<T> DataSource, T SelectedRow, 
                    params SelectItemForm.ColumnDefinition[] Columns)

The main static method for selecting DataRow from typed or untyped DataTable:

public static T GetSelectedRow<T>(
                    DataTable DataSource, T SelectedRow, 
                    params SelectItemForm.ColumnDefinition[] Columns) 
                where T : DataRow

The main static method for selecting untyped DataRow from any DataSource:

public static DataRow GetSelectedRow(
                          object DataSource, 
                          string ValueMember = null, 
                          string DisplayMember = null, 
                          object SelectedValue = null, 
                          bool AutoGenerateColumns = false)

The main static method for showing data from any DataSource:

public static DialogResult
                  ShowData(
                      object DataSource, 
                      string Text, string HeaderText, 
                      params SelectItemForm.ColumnDefinition[] Columns)
Clone this wiki locally