protected override void OnKeyDown(KeyEventArgs e) { BaseDropDownListEditorElement editorElement = this.EditorElement as BaseDropDownListEditorElement; this.selectionStart = editorElement.SelectionStart; TreeNodeElement nodeElement = this.OwnerElement as TreeNodeElement; if (nodeElement != null) { if (e.KeyCode == Keys.Enter && e.Modifiers != Keys.Control) { nodeElement.TreeViewElement.EndEdit(); } else if (e.KeyCode == Keys.Escape) { nodeElement.TreeViewElement.CancelEdit(); e.Handled = true; } else if (e.KeyCode == Keys.Left || e.KeyCode == Keys.Right) { e.Handled = true; } else if (e.KeyCode == Keys.Down && e.Modifiers == Keys.Alt) { ((RadDropDownListElement)this.EditorElement).ShowPopup(); e.Handled = true; } } }
public override void Initialize(object owner, object value) { base.Initialize(owner, value); PropertyGridItemElement element = owner as PropertyGridItemElement; PropertyGridItem item = element.Data as PropertyGridItem; if (item == null) { return; } if (item.PropertyType.IsEnum) { BaseDropDownListEditorElement editorElement = this.editorElement as BaseDropDownListEditorElement; editorElement.ListElement.BindingContext = item.PropertyGridTableElement.BindingContext; editorElement.DataSource = Enum.GetValues(item.PropertyType); editorElement.SelectedValue = item.Value; } else if (item.PropertyType == typeof(bool)) { BaseDropDownListEditorElement editorElement = this.editorElement as BaseDropDownListEditorElement; editorElement.ListElement.BindingContext = item.PropertyGridTableElement.BindingContext; RadListDataItem trueItem = new RadListDataItem(bool.TrueString, true); RadListDataItem falseItem = new RadListDataItem(bool.FalseString, false); editorElement.Items.Add(trueItem); editorElement.Items.Add(falseItem); editorElement.SelectedValue = item.Value; } }
protected override void OnKeyDown(KeyEventArgs e) { BaseDropDownListEditorElement editorElement = this.EditorElement as BaseDropDownListEditorElement; this.selectionStart = editorElement.SelectionStart; PropertyGridItemElement visualItem = this.OwnerElement as PropertyGridItemElement; if (visualItem != null) { if (e.KeyCode == Keys.Enter && e.Modifiers != Keys.Control) { visualItem.PropertyTableElement.EndEdit(); } else if (e.KeyCode == Keys.Escape) { visualItem.PropertyTableElement.CancelEdit(); e.Handled = true; } else if (e.KeyCode == Keys.Left || e.KeyCode == Keys.Right) { e.Handled = true; } else if (e.KeyCode == Keys.Down && e.Modifiers == Keys.Alt) { ((RadDropDownListElement)this.EditorElement).ShowPopup(); e.Handled = true; } } }
public override bool EndEdit() { BaseDropDownListEditorElement editorElement = this.EditorElement as BaseDropDownListEditorElement; editorElement.DoubleClick -= new EventHandler(this.editorElement_DoubleClick); editorElement.MouseEnter -= new EventHandler(this.editorElement_MouseMove); return(base.EndEdit()); }
private void DropDownListElement_HandleKeyDown(object sender, KeyEventArgs e) { BaseDropDownListEditorElement editorElement = this.EditorElement as BaseDropDownListEditorElement; if (editorElement == null || !editorElement.IsInValidState(true)) { return; } this.OnKeyDown(e); }
public override void BeginEdit() { base.BeginEdit(); BaseDropDownListEditorElement editorElement = (BaseDropDownListEditorElement)this.EditorElement; editorElement.TextBox.TextBoxItem.TextChanged += new EventHandler(this.TextBoxItem_TextChanged); editorElement.TextBox.TextBoxItem.HostedControl.LostFocus += new EventHandler(this.HostedControl_LostFocus); editorElement.RadPropertyChanged += new RadPropertyChangedEventHandler(this.DropDownListElement_RadPropertyChanged); editorElement.SelectedIndexChanging += new Telerik.WinControls.UI.Data.PositionChangingEventHandler(this.DropDownListElement_SelectedIndexChanging); editorElement.SelectedIndexChanged += new Telerik.WinControls.UI.Data.PositionChangedEventHandler(this.DropDownListElement_SelectedIndexChanged); editorElement.HandleKeyDown += new KeyEventHandler(this.DropDownListElement_HandleKeyDown); editorElement.SelectionStart = 0; editorElement.SelectionLength = editorElement.Text.Length; editorElement.Focus(); }
private void TextBoxItem_TextChanged(object sender, EventArgs e) { BaseDropDownListEditorElement editorElement = (BaseDropDownListEditorElement)this.EditorElement; if (editorElement.DropDownStyle != RadDropDownStyle.DropDown) { return; } string text = (sender as RadTextBoxItem).Text; StringComparison comparisonType = editorElement.CaseSensitive ? StringComparison.InvariantCulture : StringComparison.InvariantCultureIgnoreCase; foreach (RadListDataItem radListDataItem in editorElement.Items) { if (radListDataItem.Text.Equals(text, comparisonType)) { radListDataItem.Selected = true; break; } } }
public override bool EndEdit() { base.EndEdit(); BaseDropDownListEditorElement editorElement = (BaseDropDownListEditorElement)this.EditorElement; if (editorElement.IsPopupOpen) { editorElement.ClosePopup(); } editorElement.SelectedIndexChanging -= new Telerik.WinControls.UI.Data.PositionChangingEventHandler(this.DropDownListElement_SelectedIndexChanging); editorElement.SelectedIndexChanged -= new Telerik.WinControls.UI.Data.PositionChangedEventHandler(this.DropDownListElement_SelectedIndexChanged); editorElement.HandleKeyDown -= new KeyEventHandler(this.DropDownListElement_HandleKeyDown); editorElement.TextBox.TextBoxItem.TextChanged -= new EventHandler(this.TextBoxItem_TextChanged); editorElement.TextBox.TextBoxItem.HostedControl.LostFocus -= new EventHandler(this.HostedControl_LostFocus); editorElement.RadPropertyChanged -= new RadPropertyChangedEventHandler(this.DropDownListElement_RadPropertyChanged); editorElement.DataSource = (object)null; editorElement.Items.Clear(); editorElement.ListElement.BindingContext = (BindingContext)null; return(true); }
protected virtual void OnEditorElementDoubleClick() { if (!this.LoopValuesOnDoubleClick) { return; } BaseDropDownListEditorElement editorElement = this.EditorElement as BaseDropDownListEditorElement; if (editorElement == null || editorElement.SelectedValue == null || editorElement.Items.Count == 0) { return; } if (editorElement.SelectedIndex < editorElement.Items.Count - 1) { ++editorElement.SelectedIndex; } else { editorElement.SelectedIndex = 0; } }
public override void Initialize(object owner, object value) { base.Initialize(owner, value); PropertyGridItem data = (owner as PropertyGridItemElement).Data as PropertyGridItem; if (data == null) { return; } BaseDropDownListEditorElement editorElement = this.EditorElement as BaseDropDownListEditorElement; editorElement.ListElement.BindingContext = data.PropertyGridTableElement.BindingContext; editorElement.DropDownStyle = RadDropDownStyle.DropDownList; if (data.TypeConverter.GetStandardValuesSupported((ITypeDescriptorContext)data)) { ICollection standardValues = (ICollection)data.TypeConverter.GetStandardValues((ITypeDescriptorContext)data); List <string> stringList = new List <string>(); if (standardValues != null) { foreach (object obj in (IEnumerable)standardValues) { stringList.Add(data.TypeConverter.ConvertToString(obj)); } } string str = data.TypeConverter.ConvertToString(data.Value); if (!data.TypeConverter.GetStandardValuesExclusive((ITypeDescriptorContext)data)) { editorElement.DropDownStyle = RadDropDownStyle.DropDown; if (!string.IsNullOrEmpty(str) && !stringList.Contains(str)) { stringList.Insert(0, str); } } editorElement.DataSource = (object)stringList; editorElement.SelectedValue = (object)str; } editorElement.DoubleClick += new EventHandler(this.editorElement_DoubleClick); editorElement.MouseMove += new MouseEventHandler(this.editorElement_MouseMove); }
private void TextBoxItem_TextChanged(object sender, EventArgs e) { BaseDropDownListEditorElement dropDownListElement = (BaseDropDownListEditorElement)this.EditorElement; if (dropDownListElement.DropDownStyle != RadDropDownStyle.DropDown) { return; } RadTextBoxItem textBox = sender as RadTextBoxItem; string text = textBox.Text; StringComparison stringComparison = dropDownListElement.CaseSensitive ? StringComparison.InvariantCulture : StringComparison.InvariantCultureIgnoreCase; foreach (RadListDataItem item in dropDownListElement.Items) { if (item.Text.Equals(text, stringComparison))//ticket id 370361 { item.Selected = true; break; } } }
protected override void OnKeyDown(KeyEventArgs e) { BaseDropDownListEditorElement editorElement = this.EditorElement as BaseDropDownListEditorElement; this.selectionStart = editorElement.SelectionStart; PropertyGridItemElement ownerElement = this.OwnerElement as PropertyGridItemElement; if (ownerElement == null) { return; } if (e.KeyCode == Keys.Return && e.Modifiers != Keys.Control) { ownerElement.PropertyTableElement.EndEdit(); } else if (e.KeyCode == Keys.Escape) { ownerElement.PropertyTableElement.CancelEdit(); e.Handled = true; } else if (e.KeyCode == Keys.Left || e.KeyCode == Keys.Right) { if (editorElement.DropDownStyle != RadDropDownStyle.DropDownList) { return; } e.Handled = true; } else { if (e.KeyCode != Keys.Down || e.Modifiers != Keys.Alt) { return; } ((PopupEditorBaseElement)this.EditorElement).ShowPopup(); e.Handled = true; } }