To reproduce: - Open Theme Viewer, go ListView and sort it. - Change the theme to Fluent. Workaround: - Set the visibility of the item in the theme (see attached).
Similar to Material Themes Blending (https://docs.telerik.com/devtools/winforms/tools/visual-style-builder/working-with-visual-style-builder/material-themes-blending) provide an easy way to change the palette for the Fluent themes.
Use attached project to reproduce. Workaround: Use attached theme.
To reproduce: Add some buttons to a form set the theme to Fluent and press the button using the space button Workaround: Use the attached theme.
Is it possible to add a Hamburger Menu to the Telerik UI for WinForms? like: https://docs.microsoft.com/en-us/windows/uwp/design/controls-and-patterns/navigationview
I'd like to represent, update and delete WinForms Scheduler events in a Kendo MVC Web application and visa versa. Some kind of data converter would be appreciated.
To reproduce: please run the application provided in the ticket. You will notice that RadGridView stops updating. Workaround: use MethodInvoker for the update operation: private void readTicks() { DateTime now = DateTime.Now; Tick previouse = null; for (int i = 0; i < lines.Length; i++) { if (canceled) return; var t = new Tick(); try { try { JsonConvert.PopulateObject(lines[i], t); } catch { continue; } var c = contracts[t.ContractId]; c.Row[(int)t.TickType] = t; c.CurrentTickSetNr++; if (this.radGridView1.InvokeRequired) { this.radGridView1.Invoke(new MethodInvoker(delegate { c.Fire(t); })); } else { c.Fire(t); } previouse = t; OnTick?.Invoke(c.ConId, i); } catch (Exception e) { Debug.WriteLine(e.Message); } } OnDone?.Invoke(this, new EventArgs()); }
How to reproduce: this.radLabel1.Font = new System.Drawing.Font("Arial", 20F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel); Workaround: public class MyRadLabel : RadLabel { public override string ThemeClassName { get { return typeof(RadLabel).FullName; } } protected override RadLabelElement CreateLabelElement() { return new MyRadLabelElement(); } } public class MyRadLabelElement : RadLabelElement { protected override Type ThemeEffectiveType { get { return typeof(RadLabelElement); } } protected override void CreateChildElements() { base.CreateChildElements(); MyTextPrimitive textPrimitive = new MyTextPrimitive(); textPrimitive.Alignment = ContentAlignment.MiddleLeft; textPrimitive.BindProperty(TextPrimitive.TextProperty, this, RadLabelElement.TextProperty, PropertyBindingOptions.TwoWay); textPrimitive.BindProperty(AlignmentProperty, this, RadLabelElement.TextAlignmentProperty, PropertyBindingOptions.OneWay); textPrimitive.SetValue(ImageAndTextLayoutPanel.IsTextPrimitiveProperty, true); textPrimitive.AutoEllipsis = true; textPrimitive.TextWrap = true; ImageAndTextLayoutPanel layoutPanel = this.FindDescendant<ImageAndTextLayoutPanel>(); if (layoutPanel != null) { layoutPanel.Children.RemoveAt(1); layoutPanel.Children.Add(textPrimitive); } } } public class MyTextPrimitive : TextPrimitive { public override Font GetScaledFont(float scale) { Screen screen = Screen.PrimaryScreen; SizeF startScale = new SizeF(1.0f, 1.0f); if (RadControl.EnableDpiScaling) { startScale = NativeMethods.GetMonitorDpi(screen, NativeMethods.DpiType.Effective); } SizeF paintScale = new SizeF(scale / startScale.Width, scale / startScale.Height); Font font = this.Font ?? Control.DefaultFont; string key = paintScale.ToString() + font.FontFamily.Name + font.Size + font.Style.ToString() + font.Unit.ToString() + font.GdiCharSet.ToString() + font.GdiVerticalFont.ToString(); if (this.ScaledFontsCache.ContainsKey(key)) { return this.ScaledFontsCache[key]; } Font scaledFont = new Font(font.FontFamily, font.Size * paintScale.Height, font.Style, font.Unit, font.GdiCharSet, font.GdiVerticalFont); this.ScaledFontsCache.Add(key, scaledFont); return scaledFont; } }
ApplicationButton and QuickStartToolbar layout do not look good when user changed the theme in runtime. Issue can be reproduced with Office2010Silver, Deser, HighContrastBlack and Windows7 themes. Workaround: call recursively the UpdateLayout method for all RadControls in the form: ThemeResolutionService.ApplicationThemeName = item.Text; this.RefreshAll(); m_strThemeName = item.Text; SaveThemeName(); ... } private void RefreshAll() { foreach(Control control in this.Controls) { RefreshAllControls(control); } } void RefreshAllControls(Control ctrl) { foreach (Control control in ctrl.Controls) { RadControl radControl = control as RadControl; if (radControl != null) { radControl.RootElement.InvalidateMeasure(true); radControl.RootElement.UpdateLayout(); } RefreshAllControls(control); } }
Html-like text background color get spots of 1px whitespace between words.
Provide Grid's event similar to CellFormatting event which allows users to set the Cell Accessible Properties
This property will disable the accessibility information from being sent to Windows narrator and JAWS.
PrintSettings dialog crash if Printer's SourceName is empty. Workarround: Enumerate printers and set a name for empty Source Names. class MyPrintSettingDialog : PrintSettingsDialog { public MyPrintSettingDialog(RadPrintDocument document):base(document) { } public MyPrintSettingDialog():base() { } protected override void LoadSettings() { PrinterSettings.PaperSourceCollection paperSourceCollection = this.PrintDocument.PrinterSettings.PaperSources; int index = 0; while (index < paperSourceCollection.Count) { if (string.IsNullOrEmpty(paperSourceCollection[index].SourceName) || paperSourceCollection[index].SourceName == "-1") { paperSourceCollection[index].SourceName = "NONEMPTY NAME"; } index++; } base.LoadSettings(); } }
RadListSource should discover properties from its DataSoucre via ITypedList if the DataSource implements this interface.
If you have a RadSplitContainer with three panels, the image set to the grip will not be shown for the second splitter.
Let's say that we have a RadLabel and want to show Dot style border for it. The Dot, however, appears as thinner Line when we set the DashStyle to Dot.
Project Update Utility should be able to update vbproj files as well.
RadScreeTip has a wrong size the first time it is displayed. This size cannot be changed.