Repro-steps
Expected behavior
Observed behavior
Extra info
If the first column is of another type (like GridViewDecimalColumn) a DataError occurs (because "System.IO.MemoryStream" cannot be parces to a decimal).
To reproduce the issue, just drag a RadToggleSwitch to the form. Then, at run time call the method:
radToggleSwitch1.SetToggleState(newValue: false, animate: false);
You will notice that the colors are changed but the thumb is not moved:
Workaround:
this.radToggleSwitch1.AllowAnimation = false;
this.radToggleSwitch1.Toggle();
ThemeResolutionService.ApplicationThemeName = "Office2019Dark";
this.radDropDownList1.EnableAlternatingItemColor = true;
Hi,
I am using CalHelper to convert recurrence rule to and from string.
It looks like when I convert rule to string and then parse it back to recurrence, some of the properties get dropped.
Please see below from my VS editor highlighting this:
Am I doing something wrong, or is this a bug?
Thanks
Anu
Searching for a workaround for a previously reported bug, in walked into a little thing:
private void SelectAllCells()
{
GridViewRowInfoEnumerator rowInfoEnumerator = new GridViewRowInfoEnumerator((IHierarchicalRow) this.GridViewElement.Template);
List<GridViewCellInfo> gridViewCellInfoList = new List<GridViewCellInfo>();
this.MasterTemplate.SelectedCells.BeginUpdate();
this.MasterTemplate.SelectedCells.Clear();
while (rowInfoEnumerator.MoveNext())
{
GridViewRowInfo current = rowInfoEnumerator.Current;
if (current.CanBeSelected)
{
foreach (GridViewCellInfo cell in current.Cells)
this.MasterTemplate.SelectedCells.Add(cell);
}
}
this.MasterTemplate.SelectedCells.EndUpdate(true);
}
Please run the attached sample project, open the drop down and press the down arrow key.
Observed: application hangs
Expected: since all menu items in the drop down are disabled, nothing is expected to happen. However, the application shouldn't hangs.
Workaround:
public class CustomRadDropDownButtonElement : RadDropDownButtonElement
{
protected override Type ThemeEffectiveType
{
get
{
return typeof(RadDropDownButtonElement);
}
}
protected override RadDropDownButtonPopup CreateDropDown()
{
return new CustomDropDown(this);
}
}
public class CustomDropDown : RadDropDownButtonPopup
{
public CustomDropDown(RadElement ownerElement) : base(ownerElement)
{
}
protected override void EnsureItemEnabled(RadItem item, bool isUp)
{
do
{
item = this.GetNextItem(item, !isUp);
if (item == this.Items.Last())
{
break;
}
} while (!item.Enabled);
if (item != null)
{
this.SelectItem(item);
}
}
}
Use a custom font set like this:
this.radSyntaxEditor1.SyntaxEditorElement.EditorFontFamily = new Telerik.WinControls.SyntaxEditor.UI.FontFamily("Cascadia Code");
this.radSyntaxEditor1.SyntaxEditorElement.EditorFontSize = 13;
Then load a large document, at least 10K lines so that the clipping is visible.
Setting the SyntaxEditorElement.HorizontalScrollBar.Visibility property to Collapsed indeed hides the horizontal scrollbar but it is still measured and arranged and overlaps the view if you shrink the view:
How to reproduce:
Add a webcam control to the form and set its ControlPanelHeight property. Close the designer and try to open it. Visual Studio crashes and closes.
When saving the layout of RadDock with SaveToXml, the scaled value of SplitterWidth is saved in high DPI.
The non-scaled value should be saved.
While working with the Ribbon in a RadRibbonForm, I inadvertently removed a ribbon tab. I started recreating the ribbon tab I removed (and all of the child objects). When I got to creating and naming a ribbon button, it notified me that a control with that name already existed. It appeared that child objects, of the ribbon tab I removed, had not been removed from the form.
I tried to select the existing control from the pull-down on the top of the properties window (to find a way to remove it) and Visual Studio 2022 crashed to desktop. I hadn't saved the form I was working on, so it's mostly messed up in the project (the UI is missing), and I will have to delete what is there and start over.
The Telerik UI for WinForms installation puts a system assembly into the GAC folder which breaks a third-party tool that depends on the same assembly.
The possible workaround is to use the old Pdf processing model, by setting the UsePdfProcessingModel property to false.
this.radPdfViewer1.UsePdfProcessingModel = false;
// This switches the thumbnails to the old model too. Otherwise they are blank.
this.radPdfViewer1.ContainerElement.ThumbnailList.UsePdfProcessingModel = false;
HI,
Exploring the Demo Winforms FilterView component a bug is present.
When you expand several categories ,the automatic Vertical Scroll bar is showed but the "Maximum" property value is wrong.
You can't see all the items inside. Some items are hidden at bottom.
But if you collapse some category the new "Maximum" values takes the right previous value before collapsing showing more space as expected
I have a workaround to prevent this situation calling CategoryExpandedChanged event.
Firstly I need to call Application.DoEvents() in order to resizing internally by the component all the StackLayoutPanels connaining the Category Items
After that, I call the private method UpdateScrollBars (Suggested by support) and the ScrollBar takes the right size for its content.
Now I can show all the contained items inside the FilterView panel.
FRC
public partial class RadForm1 : Telerik.WinControls.UI.RadForm
{
public RadForm1()
{
InitializeComponent();
DataTable dt = new DataTable();
for (int i = 0; i < 20; i++)
{
dt.Columns.Add("col" + i, typeof(string));
}
for (int i = 0; i < 10; i++)
{
DataRow r = dt.NewRow();
foreach (DataColumn col in dt.Columns)
{
r[col.ColumnName] = Guid.NewGuid().ToString();
}
dt.Rows.Add(r);
}
this.radFilterView1.DataSource = dt;
}
private void radFilterView1_CategoryCreated(object sender, Telerik.WinControls.UI.FilterView.FilterViewCategoryCreatedEventArgs e)
{
e.Category.ExpandedChanged += Category_ExpandedChanged;
e.Category.Expanded = false;
}
private void Category_ExpandedChanged(object? sender, EventArgs e)
{
// You need pass the control to Windows main loop to perform the pending telerik events after property Expanded change in order to resize internally
// the StackLayoutPanel Containers before calling UpdateScrollBars
Application.DoEvents();
// Now your code
MethodInfo mi = typeof(RadFilterViewElement).GetMethod("UpdateScrollbars", BindingFlags.Instance | BindingFlags.NonPublic);
mi.Invoke(this.radFilterView1.FilterViewElement, new object[] { this.radFilterView1.FilterViewElement.ElementsPanel.Size });
// Hide the horizontal scrolll bar
radFilterView1.FilterViewElement.HorizontalScrollBar.Visibility =ElementVisibility.Collapsed;
}
}
Currently the Enabled state of the buttons is not updated:
With this setup it is expected that the First/Previous and FastBack buttons are disabled. The same is also valid with the Last/Next and FastForward buttons when the last page is current.
A possible workaround is to handle the ViewChanged event of the template and manage the Enabled state of the buttons. Just make sure that the event is subscribed before enabling the paging:
this.radGridView1.MasterTemplate.ViewChanged += this.MasterTemplate_ViewChanged;
this.radGridView1.EnablePaging = true;
private void MasterTemplate_ViewChanged(object sender, DataViewChangedEventArgs args)
{
this.radGridView1.GridViewElement.PagingPanelElement.FirstButton.Enabled = true;
this.radGridView1.GridViewElement.PagingPanelElement.PreviousButton.Enabled = true;
this.radGridView1.GridViewElement.PagingPanelElement.FastBackButton.Enabled = true;
this.radGridView1.GridViewElement.PagingPanelElement.LastButton.Enabled = true;
this.radGridView1.GridViewElement.PagingPanelElement.NextButton.Enabled = true;
this.radGridView1.GridViewElement.PagingPanelElement.FastForwardButton.Enabled = true;
if (this.radGridView1.MasterTemplate.PageIndex == 0)
{
this.radGridView1.GridViewElement.PagingPanelElement.FirstButton.Enabled = false;
this.radGridView1.GridViewElement.PagingPanelElement.PreviousButton.Enabled = false;
this.radGridView1.GridViewElement.PagingPanelElement.FastBackButton.Enabled = false;
}
else if(this.radGridView1.MasterTemplate.PageIndex == this.radGridView1.MasterTemplate.TotalPages - 1)
{
this.radGridView1.GridViewElement.PagingPanelElement.LastButton.Enabled = false;
this.radGridView1.GridViewElement.PagingPanelElement.NextButton.Enabled = false;
this.radGridView1.GridViewElement.PagingPanelElement.FastForwardButton.Enabled = false;
}
}