To reproduce:
public Form1()
{
InitializeComponent();
this.radPropertyGrid1.SelectedObject = this;
this.radPropertyGrid1.ContextMenuOpening += radPropertyGrid1_ContextMenuOpening;
}
private void radPropertyGrid1_ContextMenuOpening(object sender, Telerik.WinControls.UI.PropertyGridContextMenuOpeningEventArgs e)
{
foreach (RadItem item in e.Menu.Items)
{
if (item.Text == "Sort")
{
item.Visibility = ElementVisibility.Collapsed;
item.PropertyChanged += item_PropertyChanged;
}
}
}
Workaround:
private void radPropertyGrid1_ContextMenuOpening(object sender, Telerik.WinControls.UI.PropertyGridContextMenuOpeningEventArgs e)
{
RadItem item = null;
for (int i = 0; i < e.Menu.Items.Count; i++)
{
item = e.Menu.Items[i];
if (item.Text=="Sort")
{
e.Menu.Items.Remove(item);
}
}
}
To reproduce:
CultureInfo culture = new CultureInfo("en-US");
culture.DateTimeFormat.FirstDayOfWeek = DayOfWeek.Monday;
culture.DateTimeFormat.CalendarWeekRule = CalendarWeekRule.FirstFourDayWeek;
this.radCalendar1.ShowRowHeaders = true;
this.radCalendar1.Culture = culture;
To reproduce:
1. Add a RadGridView with a GridViewMultiComboBoxColumn. Enable the auto filter functionality for this column and add an appropriate FilterDescriptor to the RadMultiColumnComboBoxElement.
2. Using the keyboard arrows only (no mouse), navigate to the GridViewMultiComboBoxColumn.
3. Type "ba" by using the keyboard. The "b" is lost and only the "a" gets to the filter. I expect the filter to show "ba".
Workaround: use custom row behavior
public Form1()
{
InitializeComponent();
//register the custom row behavior
BaseGridBehavior gridBehavior = radGridView1.GridBehavior as BaseGridBehavior;
gridBehavior.UnregisterBehavior(typeof(GridViewDataRowInfo));
gridBehavior.RegisterBehavior(typeof(GridViewDataRowInfo), new CustomGridDataRowBehavior());
}
public class CustomGridDataRowBehavior : GridDataRowBehavior
{
protected override bool ProcessAlphaNumericKey(KeyPressEventArgs keys)
{
bool result = base.ProcessAlphaNumericKey(keys);
if (this.IsInEditMode &&
(this.BeginEditMode == RadGridViewBeginEditMode.BeginEditOnKeystroke ||
this.BeginEditMode == RadGridViewBeginEditMode.BeginEditOnKeystrokeOrF2))
{
if (this.GridViewElement.ActiveEditor is RadMultiColumnComboBoxElement)
{
this.GridViewElement.ActiveEditor.Value = keys.KeyChar;
if (this.GridViewElement.IsInEditMode)
{
RadMultiColumnComboBoxElement mccb = (RadMultiColumnComboBoxElement)this.GridViewElement.ActiveEditor;
RadTextBoxItem textBoxItem = mccb.TextBoxElement.TextBoxItem;
textBoxItem.Clear();
textBoxItem.Text = keys.KeyChar.ToString();
textBoxItem.SelectionStart = 1;
textBoxItem.SelectionLength = 0;
}
return true;
}
}
return result;
}
}
We should consider the Display attribute when using business objects as data source in RadGridView.
This item is migrated to the Telerik Document Processing portal: http://feedback.telerik.com/Project/184/Feedback/Details/190124 Please use the new item for commenting, voting and subscribing instead of this one.
Use attached to reproduce. Workaround: - Use RadForm it explicitly handles the controls scaling. - Make sure that the following of the user controls are set like this: this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;