When filter is added to merged cells, there should be a single filter icon displayed in the combined cell. Instead, multiple filters appear - one for each column in the range of the merged cells.
The SUMIFS function adds all of its arguments that meet multiple criteria. A list of the supported functions is available at http://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/formulas/functions This function can be implemented as a custom function. Check the following resources for more details on how to achieve that: - http://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/formulas/custom-functions - https://github.com/telerik/xaml-sdk/tree/master/Spreadsheet/WPF/CustomFunctions
Handle the case when the cell is too small and the value contains a decimal separator.
For example, see attached images.
Missing localization strings in PageSetup dialog.
Go to the headers and footers section. The localization is missing.
When applying a ListDataValidation, the created RadDropDownButton, which has a RadPathButton in it, looks broken when using the Windows11, Office2013, Office2019, and VisualStudio2019 themes.
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.
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 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;
}
}
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"];
}
Improve the load time when the ribbon UI is used.
For the German language translations, the following resource keys are translated into Dutch instead: