멀티 터치를 사용하는 WPF에서 응용 프로그램을 만들고 여러 터치 포인트를 수신 할 수 있지만 WPF 컨트롤이 여러 번 닿았을 때 예상대로 작동하지 않습니다 동시.WPF 컨트롤이 멀티 터치에서 예상대로 작동하지 않습니다.
시각화를위한 버튼을 사용하여 간단한 테스트 WPF 응용 프로그램을 만들었습니다.이 프로젝트는 내 프로젝트에서 문제가되지 않도록 보장합니다.
는 XAML : 여기<Window x:Class="TouchSample3.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:TouchSample3"
mc:Ignorable="d"
Title="MainWindow" Height="350" Width="525">
<Grid TouchDown="Grid_TouchDown">
<Button x:Name="button1" Content="Button" HorizontalAlignment="Left" Margin="108,86,0,0" VerticalAlignment="Top" Width="70" Height="70" Click="button1_Click" TouchDown="button1_TouchDown"/>
<Button x:Name="button2" Content="Button" HorizontalAlignment="Left" Margin="322,86,0,0" VerticalAlignment="Top" Width="70" Height="70" Click="button2_Click" TouchDown="button2_TouchDown"/>
</Grid>
</Window>
및 내 MainWindow를하다 :
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void button1_Click(object sender, RoutedEventArgs e)
{
Console.WriteLine("Button 1 clicked.");
}
private void button2_Click(object sender, RoutedEventArgs e)
{
Console.WriteLine("Button 2 clicked.");
}
// TouchDown events
private void button1_TouchDown(object sender, TouchEventArgs e)
{
Console.WriteLine("Button 1 Touch Down.");
}
private void button2_TouchDown(object sender, TouchEventArgs e)
{
Console.WriteLine("Button 2 Touch Down.");
}
}
나는 예상대로 발사 중 버튼, 터치 다운 이벤트에 한번의 터치를 수행하고 함께 이벤트를 클릭하면 버튼 애니메이션이 발생합니다.
그러나 동시에 두 번 터치하려고하면 (한 손가락을 누르고 있고 다른 손가락을 누를 때마다) TouchDown 이벤트가 실행되지만 Click 이벤트와 버튼 애니메이션은 발생하지 않습니다.
분명히 터치 포인트를 등록하지만 터치가 동시에 발생하면 WPF 컨트롤에 대한 액션/이벤트를 수행하지 않는 이유를 이해할 수 없습니다.
도움이나 방향에 대해 감사드립니다.