如何检查所有按钮 WPF 上的鼠标
How to check Mouse over all button WPF
我尝试实现检查鼠标是否在所有按钮边上的方法,因为鼠标在左侧然后在右侧,如果用户做出特定操作
在下图中用户在第 1 侧的按钮上然后按箭头方式移动并在第 2 侧移动,我的问题是如何检查用户在操作上进行此移动以进行特定操作
可以提供 make link 或一些代码帮助我做那个?
你可以为鼠标进入和离开做这样的事情
<Canvas x:Name="Canvas" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,9,6,0">
<Button Canvas.Top="0" Canvas.Left="0" x:Name="button" Width="100" MouseEnter="Butt_OnMouseEnter" Height="200"/>
</Canvas>
并在处理程序中
private void Butt_OnMouseEnter(object sender, MouseEventArgs e)
{
var position = e.GetPosition(Canvas);
}
现在这个位置是 canvas 因此会告诉你鼠标从哪一侧进入或离开..
应该是这样的:
protected Point TouchStart;
private void UIElement_OnMouseEnter(object sender, MouseEventArgs e)
{
TouchStart = e.GetPosition(this);
MyButton.Background = Brushes.Red;
}
private void UIElement_OnMouseLeave(object sender, MouseEventArgs e)
{
var touch = e.GetPosition(this);
if (touch.X >= (TouchStart.X + 99)) //button width here
{
MyButton.Background = Brushes.Aquamarine;
}
}
和XAML:
<Button Width="100" x:Name="MyButton" Height="30" MouseEnter="UIElement_OnMouseEnter" MouseLeave="UIElement_OnMouseLeave" >HoverMe</Button>
我尝试实现检查鼠标是否在所有按钮边上的方法,因为鼠标在左侧然后在右侧,如果用户做出特定操作
在下图中用户在第 1 侧的按钮上然后按箭头方式移动并在第 2 侧移动,我的问题是如何检查用户在操作上进行此移动以进行特定操作
可以提供 make link 或一些代码帮助我做那个?
你可以为鼠标进入和离开做这样的事情
<Canvas x:Name="Canvas" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,9,6,0">
<Button Canvas.Top="0" Canvas.Left="0" x:Name="button" Width="100" MouseEnter="Butt_OnMouseEnter" Height="200"/>
</Canvas>
并在处理程序中
private void Butt_OnMouseEnter(object sender, MouseEventArgs e)
{
var position = e.GetPosition(Canvas);
}
现在这个位置是 canvas 因此会告诉你鼠标从哪一侧进入或离开..
应该是这样的:
protected Point TouchStart;
private void UIElement_OnMouseEnter(object sender, MouseEventArgs e)
{
TouchStart = e.GetPosition(this);
MyButton.Background = Brushes.Red;
}
private void UIElement_OnMouseLeave(object sender, MouseEventArgs e)
{
var touch = e.GetPosition(this);
if (touch.X >= (TouchStart.X + 99)) //button width here
{
MyButton.Background = Brushes.Aquamarine;
}
}
和XAML:
<Button Width="100" x:Name="MyButton" Height="30" MouseEnter="UIElement_OnMouseEnter" MouseLeave="UIElement_OnMouseLeave" >HoverMe</Button>