Unplanned
Last Updated: 15 Oct 2021 11:40 by ADMIN
Created by: Christian
Comments: 0
Category: Window
Type: Feature Request
0
Support the Snap Layout feature of Windows 11.
Declined
Last Updated: 10 Aug 2021 12:57 by ADMIN
Created by: Simon
Comments: 3
Category: Window
Type: Feature Request
0

Hi,

our company is slowly rolling out high-DPI laptops to our users. On such devices, Windows automatically enables DPI scaling, using a value of 125% or 150%, depending on the screen's resolution. In combination with an external (unscaled) monitor, this causes our application, to appear blurry on the scaled screen.

Windows has built-in functionality to reduce the blurring, however, this only works on the main screen. If you connect a secondary screen and set that as your main screen, the application will always appear blurry on the laptop screen.

My understanding of the topic is that WPF is DPI aware - but on the system level. So it does not cope well with monitors that have different DPI settings. However, I found a tutorial on Microsoft Docs (https://docs.microsoft.com/en-gb/windows/win32/hidpi/declaring-managed-apps-dpi-aware?redirectedfrom=MSDN), hinting that it is possible to make WPF windows per-monitor DPI aware. Unfortunately, this workaround requires you to inherit your window class from their utility class.

Since all of our windows already inherit from RadWindow, I have no chance to include this without copying either their base class or RadWindow. Having RadWindow support per-monitor DPI awareness would be a great feature to have. Or is there already a way to support this?

 

Best Regards,

Simon Müller

Hofmann Fördertechnik GmbH

 

PS: Why does the first feature form in the feature request workflow (the one, where it first searches for similar requests) not let me select the control/area I am searching for like the one for private tickets? I almost submitted this request for the Area "All (Multiple Controls)" because of that.


Won't Fix
Last Updated: 16 Jun 2021 14:03 by ADMIN
When the RadWindow is declared in XAML and is used as a main window, it won't show in the designer by simply merging the required theme resources and defining an implicit style based on the RadWindowStyle.

Tested with 16.8.4 - works as expected. Updated to 16.9.0 to match the client's setup and managed to reproduce the issue. The issue is reproducible also with the 16.10.0 version of Visual Studio.


Completed
Last Updated: 11 Jun 2021 12:05 by ADMIN
Release R2 2021 SP
When the value of the IsTopMost property of a RadWindow is changed during runtime and then another RadWindow is shown, an ArgumentOutOfRangeException is thrown.
Completed
Last Updated: 21 May 2021 10:19 by ADMIN
Release LIB 2021.2.525 (25/05/2021)

If you open the window on a specific resolution, maximize it and then change the resolution to a bigger one, the window size is not updated. The window stays in the original resolution of the screen.

To work this around subscribe to the SystemEvents.DisplaySettingsChanged event and reset the WindowState of RadWindow.

public MainWindow() // where MainWindow is RadWindow
{
	InitializeComponent();
	SystemEvents.DisplaySettingsChanged += SystemEvents_DisplaySettingsChanged;
}

private void SystemEvents_DisplaySettingsChanged(object sender, EventArgs e)
{
	if (this.WindowState == WindowState.Maximized)
	{
		this.WindowState = WindowState.Normal;
		this.WindowState = WindowState.Maximized;
	}
}

Completed
Last Updated: 21 May 2021 10:19 by ADMIN
Release LIB 2021.2.525 (25/05/2021)
The window is not correctly resized when it is maximized and the taskbar is moved from vertical to horizontal or vice versa 
Completed
Last Updated: 21 May 2021 06:38 by ADMIN
Release LIB 2021.2.525 (25/05/2021)
Setting the dpiAware attribute to True in the app.manifest file is making the WPF application DPI aware. In this case, the resizing of RadWindow doesn't work properly on two monitors with different DPI scale factors.
Declined
Last Updated: 07 Apr 2021 10:38 by ADMIN

Hi,

Please see attached project,

After use animation changed window size and use the mouse to drag to change the size of the window,

When the window size is smaller than the original size, the upper right button will be hide,

Original WPF Window no this problem, And changing size animation very Smooth then RadWIndow.

Unplanned
Last Updated: 30 Mar 2021 11:30 by ADMIN
We can expose a property/ies to easily customize the header border of the window.
Completed
Last Updated: 09 Mar 2021 12:29 by ADMIN
Release LIB 2021.1.315
ArgumentOutOfRangeException can be thrown when showing/closing windows in a multi-threaded application. Here's a possible stack trace:

System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
   at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
   at System.ThrowHelper.ThrowArgumentOutOfRangeException()
   at System.Collections.Generic.List`1.RemoveAt(Int32 index)
   at System.Collections.Generic.List`1.Remove(T item)
   at Telerik.Windows.Controls.RadWindowManager.RemoveWindow(WindowBase window)
   at Telerik.Windows.Controls.WindowBase.OnClosed()
   at Telerik.Windows.Controls.RadWindow.OnClosed()
   at Telerik.Windows.Controls.WindowBase.CloseHostImidiately()
   at Telerik.Windows.Controls.WindowBase.TryClose(Boolean shouldCloseHost)
   at Telerik.Windows.Controls.WindowBase.Telerik.Windows.Controls.InternalWindow.IWindowDragAware.TryClose(Boolean shouldCloseHost)
   at Telerik.Windows.Controls.InternalWindow.WindowWithNoChromeWindowHost.OnWindowClosing(Object sender, CancelEventArgs e)
   at System.Windows.Window.OnClosing(CancelEventArgs e)
   at System.Windows.Window.WmClose()
   at System.Windows.Window.WindowFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.PublicHooksFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.WrappedInvoke(Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
   at System.Windows.Threading.Dispatcher.Invoke(DispatcherPriority priority, Delegate method, Object arg)
   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
Declined
Last Updated: 10 Feb 2021 13:39 by ADMIN
Unplanned
Last Updated: 10 Feb 2021 13:39 by ADMIN
Created by: Rob A.
Comments: 2
Category: Window
Type: Feature Request
4

There should be an easy method to add/override the shadow of a RadWindow. Either via XAML attributes or code behind.

It would probably be good to allow the override of BlurRadius, Direction, and ShadowDepth.
For example (mockup):

<telerik:RadWindow x:Class="MyRadWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
        Header="Settings" WindowStartupLocation="CenterOwner" SizeToContent="True" ResizeMode="NoResize" MinWidth="500" MaxWidth="900"    DropShadowOverride="True" DropShadowOverrideBlurRadius="10" DropShadowOverrideDirection"-90", DropShadowOverrideDepth="3" DropShadowOverrideColor="White">
     
    <Grid>
 
    <!-- UI code -->
 
    </Grid>
 
</telerik:RadWindow>

Completed
Last Updated: 01 Feb 2021 06:16 by ADMIN
Release LIB 2021.1.201 (2/1/2021)
Completed
Last Updated: 17 Nov 2020 10:39 by ADMIN
As an example Windows 10 OS Window gets different Opacity for its Title and Buttons when Inactive (open two Window-s and make them appear one behind the other -- the one in the background of the active window is inactive). Our Office2016 and Office2016 Touch themes are inspired by Windows 10 OS as we officially stated so we might mind adding this visual appearance on our side for RadWindow.
Completed
Last Updated: 05 Nov 2020 15:12 by ADMIN
Release LIB 2020.3.1109 (11/09/2020)
Changing the ResponseButton through the DefaultFocusedButton property of the DialogParameters does not work in the Office2019 theme.
Completed
Last Updated: 30 Sep 2020 15:00 by ADMIN
Release LIB 2020.3.1005 (10/05/2020)
ADMIN
Created by: Kalin
Comments: 1
Category: Window
Type: Feature Request
5
The property is present, but it is not implemented. 
Completed
Last Updated: 21 Sep 2020 10:56 by ADMIN
Release LIB 2020.3.921 (09/21/2020)
This behavior can be observed when the ResizeMode property of RadWindow is set to CanResizeWithGrip. 
Completed
Last Updated: 17 Aug 2020 12:24 by ADMIN
Release LIB 2020.2.617
This could appear on virtualization systems like Citrix and Systancia. The exception appears in the TaskbarHelper.GetAppBarData() method.
Completed
Last Updated: 10 Jun 2020 13:32 by ADMIN
Release R2 2020 SP1

If the autohiding feature of the taskbar is enabled and RadWindow is maximized, the taskbar is not displayed when the mouse is over the bottom of the screen.

This is observed also in RadTabbedWindow.

Completed
Last Updated: 20 Jan 2020 07:21 by ADMIN
Release LIB 2020.1.120 (1/20/2020)

Hello,

 

I've found a new bug regarding per-monitor DPI awareness in the latest WPF controls build (2020.1.115).

Applications start fine on the modern Windows 10 systems (1607 or later) but crash on previous Windows versions.

The conditions to reproduce:

  • The application is launched on Windows version older than Windows 10 1607/Windows Server 2016. I've reproduced it on Windows 8.1/Windows Server 2012 R2, but I suppose it also affects Windows 10 1507/1511, and probably Windows 8/Windows Server 2012.
  • Application manifest contains:
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true/PM</dpiAware>

Here is the stack trace:

System.EntryPointNotFoundException: Unable to find an entry point named 'GetDpiForSystem' in DLL 'User32.dll'.

   at Telerik.Windows.Controls.InternalWindow.Standard.NativeMethods.GetDpiForSystem()

   at Telerik.Windows.Controls.InternalWindow.Standard.DpiHelper.GetSystemScaleFactor()

   at Telerik.Windows.Controls.InternalWindow.Standard.DpiHelper.CalculateScaleFactor(IntPtr hwnd)

   at Telerik.Windows.Controls.InternalWindow.Standard.DpiHelper.GetPerMonitorDPIAwareScaleFactor(IntPtr hwnd)

   at Telerik.Windows.Controls.InternalWindow.ChromelessWindowHelper.<Initialize>b__81_0(Object sender, EventArgs args)

   at System.Windows.Window.OnSourceInitialized(EventArgs e)

   at System.Windows.Window.CreateSourceWindow(Boolean duringShow)

   at System.Windows.Window.CreateSourceWindowDuringShow()

   at System.Windows.Window.SafeCreateWindowDuringShow()

   at System.Windows.Window.ShowHelper(Object booleanBox)

   at System.Windows.Window.Show()

   at Telerik.Windows.Controls.InternalWindow.WindowWithNoChromeWindowHost.Open(Boolean isModal)

   at Telerik.Windows.Controls.WindowBase.ShowWindow(Boolean isModal)

   at Telerik.Windows.Controls.RadWindow.Show()

   at TelerikWpfCrash.App.OnStartup(StartupEventArgs e) in C:\Users\fedarovich\source\repos\Test\TelerikWpfCrash\TelerikWpfCrash\App.xaml.cs:line 20


The issue happens because the code calls the WinAPI functions not available on these OS versions (for example, GetDpiForSystem, but maybe there are more). 

I've attached a small example to reproduce this issue. It is for .Net Core 3.1, but the same issue exists in .Net Framework too.

1 2 3 4 5