Hello,
The VSplit cursor does not seem to be scaling in DPI aware applications. It's not too bad up to 150% scale. But 200% scale or higher the cursor is almost invisible. This also seems to be the case for the SplitContainer control. Is there a solution for that?
Robert
7 Answers, 1 is accepted
0
Hello Robert,
Thank you for writing.
RadSplitContainer is using the default Cursors.VSplit and Cursors.. These cursors indeed do not seem to be scaled correctly. The issue is with Microsoft and not related to the split container or any of our controls. You can reproduce it in a standard dpi-aware form with the following:
Due to the nature of the reported issue, I cannot suggest a suitable workaround.
I hope this helps. Should you have further questions please do not hesitate to write back.
Regards,
Hristo
Progress Telerik
Thank you for writing.
RadSplitContainer is using the default Cursors.VSplit and Cursors.. These cursors indeed do not seem to be scaled correctly. The issue is with Microsoft and not related to the split container or any of our controls. You can reproduce it in a standard dpi-aware form with the following:
this
.Cursor = Cursors.VSplit;
Due to the nature of the reported issue, I cannot suggest a suitable workaround.
I hope this helps. Should you have further questions please do not hesitate to write back.
Regards,
Hristo
Progress Telerik
Try our brand new, jQuery-free Angular 2 components built from ground-up which deliver the business app essential building blocks - a grid component, data visualization (charts) and form elements.
0
Robert
Top achievements
Rank 1
Iron
answered on 15 Sep 2017, 03:30 PM
Would there be a way to switch cursors? I was thinking maybe if scale is greater 150% the VSplit cursor could be switched for the SizeWE cursor which does seem to scale correctly at higher resolutions.
0
Hello Robert,
Thank you for writing.
In RadSplitContainer, you can accomplish this task by creating a custom control and overriding its Cursor property as well as the MouseMove and MouseDown methods:
I hope this helps. Should you have further questions please do not hesitate to write back.
Regards,
Hristo
Progress Telerik
Thank you for writing.
In RadSplitContainer, you can accomplish this task by creating a custom control and overriding its Cursor property as well as the MouseMove and MouseDown methods:
public
class
MyRadSplitContainer : RadSplitContainer
{
private
bool
isResizing;
public
override
string
ThemeClassName
{
get
{
return
typeof
(RadSplitContainer).FullName;
}
}
protected
override
void
OnMouseDown(MouseEventArgs e)
{
if
(e.Button == MouseButtons.Left &&
this
.ContentRectangle.Contains(e.Location))
{
SplitterElement splitter = GetSplitterElementAtPoint(e.Location);
if
(splitter !=
null
&& !splitter.Fixed)
{
this
.isResizing =
true
;
}
base
.OnMouseDown(e);
}
}
protected
override
void
OnMouseUp(MouseEventArgs e)
{
base
.OnMouseUp(e);
this
.isResizing =
false
;
}
public
override
Cursor Cursor
{
get
{
Cursor cursor =
base
.Cursor;
if
(
this
.isResizing && cursor == Cursors.SizeWE)
{
cursor = Cursors.VSplit;
}
else
if
(
this
.isResizing && cursor == Cursors.SizeNS)
{
cursor = Cursors.HSplit;
}
return
cursor;
}
set
{
if
(value == Cursors.VSplit)
{
value = Cursors.SizeWE;
}
else
if
(value == Cursors.HSplit)
{
value = Cursors.SizeNS;
}
base
.Cursor = value;
}
}
}
I hope this helps. Should you have further questions please do not hesitate to write back.
Regards,
Hristo
Progress Telerik
Try our brand new, jQuery-free Angular 2 components built from ground-up which deliver the business app essential building blocks - a grid component, data visualization (charts) and form elements.
0
Robert
Top achievements
Rank 1
Iron
answered on 18 Sep 2017, 04:18 PM
That works quite nicely. Thank you. Also works for RadDock with code change to this.isResizing2.
Robert
0
Hello Robert,
Thank you for the update.
I am glad that the suggested approach is working well in your actual project.
Please let me know if you have other questions.
Regards,
Hristo
Progress Telerik
Thank you for the update.
I am glad that the suggested approach is working well in your actual project.
Please let me know if you have other questions.
Regards,
Hristo
Progress Telerik
Try our brand new, jQuery-free Angular 2 components built from ground-up which deliver the business app essential building blocks - a grid component, data visualization (charts) and form elements.
0
David
Top achievements
Rank 1
answered on 16 Nov 2018, 02:14 AM
It worked for me too. May I suggest a small feature improvement: simply to allow the split cursor to be set by the programmer?
0
Hi David,
I agree that this small feature would be a nice improvement in the RadSplitContainer. I have logged the feature request on our feedback portal, here: ADD. RadSplitContainer - option for defining the resizing cursor. I have also updated your Telerik points. We will do our best to implement to the new feature for the R1 2019 release.
Regards,
Hristo
Progress Telerik
I agree that this small feature would be a nice improvement in the RadSplitContainer. I have logged the feature request on our feedback portal, here: ADD. RadSplitContainer - option for defining the resizing cursor. I have also updated your Telerik points. We will do our best to implement to the new feature for the R1 2019 release.
Regards,
Hristo
Progress Telerik
Get quickly onboarded and successful with your Telerik and/or Kendo UI products with the Virtual Classroom free technical training, available to all active customers. Learn More.