The CustomFilterDialogContent element's OK and Cancel buttons are different in size for the Windows 11 theme.
To work this around, you can subscribe to the Loaded event of the CustomFilterDialogContent element and retrieve the RadButton with x:Name="PART_ButtonCancel" via the ChildrenOfType extension method. On the retrieved button, set the VerticalAlignment property to Center.
The following code snippet showcases this suggestion's implementation:
static MainWindow()
{
EventManager.RegisterClassHandler(typeof(CustomFilterDialogContent), LoadedEvent, new RoutedEventHandler(OnCustomFilterDialogContentLoaded));
}
private static void OnCustomFilterDialogContentLoaded(object sender, RoutedEventArgs e)
{
RadButton cancelButton = ((CustomFilterDialogContent)sender).ChildrenOfType<RadButton>().FirstOrDefault(x => x.Name == "PART_ButtonCancel");
if (cancelButton != null)
{
cancelButton.VerticalAlignment = VerticalAlignment.Center;
}
}
Check how the performance can be improved in this scenario. The StyleGallery is taking much time to load, the GetUsedCellRange method is called multiple times.
The horizontal ScrollBar of RadSpreadsheet is missing the bottom border of its track. Additional to that there is a slight offset between the right end of the viewport and the right button of the ScrollBar.
To work this around, set the Margin of the horizontal ScrollBar to 0, and modify its ControlTemplate so that it adds a bottom border for the track's RepeatButton elements.
private void RadSpreadsheet_Loaded(object sender, RoutedEventArgs e)
{
var spreadsheet = (RadSpreadsheet)sender;
var scrollBar = spreadsheet.ChildrenOfType<ScrollBar>().FirstOrDefault(x => x.Name == "HorizontalScrollBar");
scrollBar.Margin = new Thickness(0);
scrollBar.Template = (ControlTemplate)this.Resources["MyCustomScrollBarTemplate"];
}
Returns a Range object that represents the current region. The current region is a range bounded by any combination of blank rows and blank columns. If we want to be consistent with MS Excel we should implement this property. It is useful for many operations of a region such as filtering(selecting one cell and executing the Filter command should apply it to the current region), sorting, selecting all and etc. This document will be useful: https://docs.microsoft.com/en-us/office/vba/api/excel.range.currentregion.
Improve the load time when the ribbon UI is used.
For the German language translations, the following resource keys are translated into Dutch instead:
The numeric box that allows you to select the "to" page in the PrintPreviewControl is clipped when the "Pages:" and "to" strings are translated to a language where these words are longer. For example, this reproduces with Dutch culture which uses the "Pagina's:" and "naar" texts.
To work this around, you can get the Grid panel that hosts the content and increase the Width of one of its ColumnDefinitions.
private void PrintPreviewControl_Loaded(object sender, RoutedEventArgs e)
{
var printPreview = (PrintPreviewControl)sender;
var rootGrid = printPreview.FindChildByType<Grid>();
rootGrid.ColumnDefinitions[0].Width = new GridLength(355);
}
Add information about the selection in the SelectionChanged event arguments.
- We need to differentiate from mouse event to keyboard event. But since the EventArgs is empty we are not able to differentiate.
When RadSpreadsheet is placed inside a data template and the Workbook property is bound, the binding fails. In the Convert() method of the debug converter, the proper value is set. However, an empty workbook is displayed in the view.
Add an event that indicates when a hyperlink is clicked.
Spreadsheet: Add the ability to build formulas using keyboard navigation:
1. Press '=' in a cell. The cell goes into Edit Mode.