在每个其他视觉组件上方自定义光标

本文关键字:自定义 光标 组件 视觉 其他 | 更新日期: 2023-09-27 18:22:30

我有一个带有自定义光标的Windows Modern应用程序,它是通过在系统光标后面有一个图像来实现的。

我只是将自定义光标图像添加到应用程序的主网格中,一切都很好。

public MainPage() : base(true)
{
    this.InitializeComponent();
    MainPageGrid.Children.Add(new CustomCursor());
}

但当弹出窗口打开时,它会在我的自定义光标上方。我是否可以设置组件的Z索引(或类似的东西),使其成为我现代应用程序中最重要的视觉组件?

在每个其他视觉组件上方自定义光标

我建议使用实际的自定义光标。我认为这篇文章看起来像是一个不错的介绍使用这些。您也可以查看这个问题,了解有关更改光标的一些提示。除此之外,我想你不知道什么时候会随机弹出。你可以用VisualTreeHelper.GetOpenPopups()进行民意调查,然后做一些事情让你的弹出式节目名列前茅(也许只是重新打开就可以了,或者你每次都需要创建一个新的),但这可能不会给你带来良好的用户体验或性能。您还可以计算出所有可以从ComboBoxesFlyouts等弹出的事件,但这听起来很痛苦。最好创建一个附加行为,可以将其附加到所有此类弹出源元素,以触发XAML呈现的自定义光标的z索引修复。。。

不需要将组件实现为自定义光标,因为可以覆盖最大大小限制:如何在Windows中覆盖最大32x32鼠标大小,就像这个程序可以一样