如何在切换按钮内更改鼠标光标
How to change mouse cursor within Toggle button
我有一个 ToggleButton,单击此按钮时,处理时间可能需要一段时间,例如 3 到 5 秒。在那段时间,我想给用户一个反馈,将光标更改为等待状态。
ToggleButton 的点击是由 Command 处理的,因为我使用的是 MVVM 模式,所以我不处理点击事件,也无法使用隐藏代码更改它。
有没有办法只使用 xaml?
我试过了,但没用:
<Style.Triggers>
<Trigger Property="IsMouseCaptureWithin" Value="True">
<Setter Property="Cursor" Value="Wait"></Setter>
</Trigger>
</Style.Triggers>
您可以将 ToggleButton 上的 IsChecked 属性 绑定到您的 ViewModel 或使用命令,当值更改或执行命令时,您可以更改第二个 属性(将其命名为忙)。然后像这样创建一个 DataTrigger:
<Style.Triggers>
<DataTrigger Binding="{Binding IsBusy}" Value="True">
<Setter Property="Cursor" Value="Wait"></Setter>
</DataTrigger>
</Style.Triggers>
我有一个 ToggleButton,单击此按钮时,处理时间可能需要一段时间,例如 3 到 5 秒。在那段时间,我想给用户一个反馈,将光标更改为等待状态。
ToggleButton 的点击是由 Command 处理的,因为我使用的是 MVVM 模式,所以我不处理点击事件,也无法使用隐藏代码更改它。
有没有办法只使用 xaml?
我试过了,但没用:
<Style.Triggers>
<Trigger Property="IsMouseCaptureWithin" Value="True">
<Setter Property="Cursor" Value="Wait"></Setter>
</Trigger>
</Style.Triggers>
您可以将 ToggleButton 上的 IsChecked 属性 绑定到您的 ViewModel 或使用命令,当值更改或执行命令时,您可以更改第二个 属性(将其命名为忙)。然后像这样创建一个 DataTrigger:
<Style.Triggers>
<DataTrigger Binding="{Binding IsBusy}" Value="True">
<Setter Property="Cursor" Value="Wait"></Setter>
</DataTrigger>
</Style.Triggers>