/// <summary> /// This is a useful default implementation of SearchText method, intended to be called /// by implementors of IVirtualListDataSource. /// </summary> /// <param name="value"></param> /// <param name="first"></param> /// <param name="last"></param> /// <param name="column"></param> /// <param name="source"></param> /// <returns></returns> static public int DefaultSearchText(string value, int first, int last, OLVColumn column, IVirtualListDataSource source) { if (first <= last) { for (int i = first; i <= last; i++) { string data = column.GetStringValue(source.GetNthObject(i)); if (data.StartsWith(value, StringComparison.CurrentCultureIgnoreCase)) { return(i); } } } else { for (int i = first; i >= last; i--) { string data = column.GetStringValue(source.GetNthObject(i)); if (data.StartsWith(value, StringComparison.CurrentCultureIgnoreCase)) { return(i); } } } return(-1); }
/// <summary> /// /// </summary> /// <param name="text"></param> /// <param name="first"></param> /// <param name="last"></param> /// <param name="column"></param> /// <returns></returns> public override int SearchText(string text, int first, int last, OLVColumn column) { if (first <= last) { for (int i = first; i <= last; i++) { string data = column.GetStringValue(this.listView.GetNthItemInDisplayOrder(i).RowObject); if (data.StartsWith(text, StringComparison.CurrentCultureIgnoreCase)) { return(i); } } } else { for (int i = first; i >= last; i--) { string data = column.GetStringValue(this.listView.GetNthItemInDisplayOrder(i).RowObject); if (data.StartsWith(text, StringComparison.CurrentCultureIgnoreCase)) { return(i); } } } return(-1); }
public static int DefaultSearchText(string value, int first, int last, OLVColumn column, IVirtualListDataSource source) { int num; if (first <= last) { for (num = first; num <= last; num++) { if (column.GetStringValue(source.GetNthObject(num)).StartsWith(value, StringComparison.CurrentCultureIgnoreCase)) { return(num); } } } else { for (num = first; num >= last; num--) { if (column.GetStringValue(source.GetNthObject(num)).StartsWith(value, StringComparison.CurrentCultureIgnoreCase)) { return(num); } } } return(-1); }
public AutoCompleteCellEditor(ObjectListView lv, OLVColumn column) { this.DropDownStyle = ComboBoxStyle.DropDown; Dictionary<String, bool> alreadySeen = new Dictionary<string, bool>(); for (int i = 0; i < Math.Min(lv.GetItemCount(), 1000); i++) { String str = column.GetStringValue(lv.GetModelObject(i)); if (!alreadySeen.ContainsKey(str)) { this.Items.Add(str); alreadySeen[str] = true; } } this.Sorted = true; this.AutoCompleteSource = AutoCompleteSource.ListItems; this.AutoCompleteMode = AutoCompleteMode.Append; }
public AutoCompleteCellEditor(ObjectListView lv, OLVColumn column) { base.DropDownStyle = ComboBoxStyle.DropDown; Dictionary <string, bool> dictionary = new Dictionary <string, bool>(); for (int i = 0; i < Math.Min(lv.GetItemCount(), 0x3e8); i++) { string stringValue = column.GetStringValue(lv.GetModelObject(i)); if (!dictionary.ContainsKey(stringValue)) { base.Items.Add(stringValue); dictionary[stringValue] = true; } } base.Sorted = true; base.AutoCompleteSource = AutoCompleteSource.ListItems; base.AutoCompleteMode = AutoCompleteMode.Append; }