c# - 在 WPF 窗口中修改调整大小 handle 的光标 ("CanResizeWithGrip"+ "WindowStyle:none")

标签 c# wpf visual-studio user-interface xaml

似乎其他 StackOverflow 问题都没有回答这个特定问题。或者它可能是糟糕的搜索技巧......

我有一个用 WPF 编写的 ("CanResizeWithGrip"+ "WindowStyle="none"") 应用程序>/C#.
应用程序仅横向调整大小(MaxHeightMinHeight 相同),所以我想要 ResizeGrip 的光标> 成为 ScrollWE(仅限水平)而不是默认的对角线。
当光标提示他们可以时,用户尝试垂直调整大小。

我尝试使用下面的代码修改控件模板,但随后整个窗口都消失了,我只剩下 resizegrip 用户界面——而且仍然是一个对角光标!

<Window.Template>
    <ControlTemplate TargetType="Window">
        <ResizeGrip Cursor="ScrollWE" />
    </ControlTemplate>
</Window.Template>

调整大小工作正常,窗口样式化正确(当我不使用上面的 ControlTemplate 时)。
我只需要更改出现在 ResizeGrip 上的光标。怎么做?

也欢迎提供有关指导的提示(更完整的答案:))。


编辑:Hans 的评论是正确的。我在我的 ControlTemplate 试用中错误地使用了 ScollSE(我现在在问题中修复了它)。

最佳答案

如果我使用以下标记创建一个窗口

<Window x:Class="PocketExample.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">
    <DockPanel>
        <ResizeGrip DockPanel.Dock="Bottom" Cursor="SizeWE"/>
    </DockPanel>
</Window>

我得到了正确的光标。这对你不起作用吗?您真的在使用 ScrollSE 游标吗?正如 Hans 指出的那样,这是一个对角光标,这可以解释为什么你会得到一个对角光标。

关于c# - 在 WPF 窗口中修改调整大小 handle 的光标 ("CanResizeWithGrip"+ "WindowStyle:none"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3613328/

相关文章:

c# - 以并行方式将项目添加到 ListBox

visual-studio - 适用于 Visual Studio 的 Azure 流分析工具 : Error when executing aggregated queries - "Object reference not set to an instance of an object"

visual-studio - Delphi 等同于 Visual Studio 编码的 UI 测试?

c# - 将隐式转换为具体类型的结果存储到接口(interface)中失败

c# - 使用windows身份验证登录sql server

c# - 使用 EqualityComparer 初始化静态字典

c# - Excel 中的范围.替换

.net - 什么时候应该创建Control的子类,什么时候应该创建Panel的子类?

c# - 如何让 WPF 验证冒泡到父控件?

visual-studio - 在 Visual Studio 中启动 DotNetNuke 项目的正确方法是什么?