/// <summary> /// Displays a dialog to select strings from an array of strings /// </summary> /// <param name="title"></param> /// <param name="prompt"></param> /// <param name="items"></param> /// <returns></returns> public static string[] SelectItems(string title, string prompt, string[] items) { var dlg = new GenericItemSelectionDialog(); if (!string.IsNullOrEmpty(title)) { dlg.Text = title; } if (!string.IsNullOrEmpty(prompt)) { dlg.lblPrompt.Text = prompt; } dlg.lstItems.SelectionMode = SelectionMode.MultiSimple; dlg.lstItems.DataSource = items; if (dlg.ShowDialog() == DialogResult.OK) { List <string> values = new List <string>(); foreach (var item in dlg.lstItems.SelectedItems) { values.Add(item.ToString()); } return(values.ToArray()); } return(new string[0]); }
/// <summary> /// Displays a dialog to select an item from an array of items /// </summary> /// <typeparam name="T"></typeparam> /// <param name="title"></param> /// <param name="prompt"></param> /// <param name="items"></param> /// <param name="displayMember"></param> /// <param name="valueMember"></param> /// <returns></returns> public static T SelectItem <T>(string title, string prompt, T[] items, string displayMember, string valueMember) where T : class { var dlg = new GenericItemSelectionDialog(); if (!string.IsNullOrEmpty(title)) { dlg.Text = title; } if (!string.IsNullOrEmpty(prompt)) { dlg.lblPrompt.Text = prompt; } if (!string.IsNullOrEmpty(displayMember)) { dlg.lstItems.DisplayMember = displayMember; } if (!string.IsNullOrEmpty(valueMember)) { dlg.lstItems.ValueMember = valueMember; } dlg.lstItems.DataSource = items; if (dlg.ShowDialog() == DialogResult.OK) { return((T)dlg.lstItems.SelectedItem); } return(null); }
/// <summary> /// Displays a dialog to select items from an array of items /// </summary> /// <typeparam name="T"></typeparam> /// <param name="title"></param> /// <param name="prompt"></param> /// <param name="items"></param> /// <param name="displayMember"></param> /// <param name="valueMember"></param> /// <returns></returns> public static T[] SelectItems <T>(string title, string prompt, T[] items, string displayMember, string valueMember) where T : class { var dlg = new GenericItemSelectionDialog(); if (!string.IsNullOrEmpty(title)) { dlg.Text = title; } if (!string.IsNullOrEmpty(prompt)) { dlg.lblPrompt.Text = prompt; } dlg.lstItems.SelectionMode = SelectionMode.MultiSimple; dlg.lstItems.DataSource = items; if (!string.IsNullOrEmpty(displayMember)) { dlg.lstItems.DisplayMember = displayMember; } if (!string.IsNullOrEmpty(valueMember)) { dlg.lstItems.ValueMember = valueMember; } if (dlg.ShowDialog() == DialogResult.OK) { List <T> values = new List <T>(); foreach (T item in dlg.lstItems.SelectedItems) { values.Add(item); } return(values.ToArray()); } return(new T[0]); }