HoldingEventHandler 代理人
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
public delegate void HoldingEventHandler(Platform::Object ^ sender, HoldingRoutedEventArgs ^ e);
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.Guid(4263757245, 18820, 22198, 185, 43, 252, 157, 18, 22, 178, 78)]
public delegate void HoldingEventHandler(object sender, HoldingRoutedEventArgs e);
Public Delegate Sub HoldingEventHandler(sender As Object, e As HoldingRoutedEventArgs)
參數
- sender
-
Object
Platform::Object
附加事件處理常式的物件。
事件的事件資料。
- 屬性
範例
下列程式碼範例顯示 輸入範例中的案例 3。 此程式碼顯示使用Holding、Tapped、DoubleTapped 和 RightTapped事件進行直接操作的一些使用模式。
<StackPanel>
<StackPanel Orientation="Horizontal" Margin="0,10,0,0">
<Button x:Name="scenario3Reset" Content="Reset" Margin="0,0,10,0"
Click="Scenario3Reset" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<Border x:Name="bTapped" Background="Red"
Height="100" Width="150" CornerRadius="20" Margin="20"
BorderBrush="Black" BorderThickness="2">
<TextBlock Style="{StaticResource BasicTextStyle}" Text="Tap"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
<Border x:Name="bDoubleTapped" Background="Red"
Height="100" Width="150" CornerRadius="20" Margin="20"
BorderBrush="Black" BorderThickness="2">
<TextBlock Style="{StaticResource BasicTextStyle}"
Text="Double Tap"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
<Border x:Name="bRightTapped" Background="Red"
Height="100" Width="150" CornerRadius="20" Margin="20"
BorderBrush="Black" BorderThickness="2">
<TextBlock Style="{StaticResource BasicTextStyle}"
Text="Press, Hold and Lift" TextWrapping="Wrap"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
<Border x:Name="bHolding" Background="Red"
Height="100" Width="150" CornerRadius="20" Margin="20"
BorderBrush="Black" BorderThickness="2">
<TextBlock Style="{StaticResource BasicTextStyle}" Text="Hold"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</StackPanel>
</StackPanel>
public Scenario3()
{
this.InitializeComponent();
bTapped.Tapped += new TappedEventHandler(bTapped_Tapped);
bDoubleTapped.DoubleTapped += new DoubleTappedEventHandler(
bDoubleTapped_DoubleTapped);
bRightTapped.RightTapped += new RightTappedEventHandler(
bRightTapped_RightTapped);
bHolding.Holding += new HoldingEventHandler(bHolding_Holding);
}
private void Scenario3UpdateVisuals(Border border, String gesture)
{
switch (gesture.ToLower())
{
case "holding":
border.Background = new SolidColorBrush(Colors.Yellow);
break;
default:
border.Background = new SolidColorBrush(Colors.Green);
break;
}
((TextBlock)border.Child).Text = gesture;
}
private void bHolding_Holding(object sender, HoldingRoutedEventArgs e)
{
string holdingState =
(e.HoldingState == Windows.UI.Input.HoldingState.Started) ?
"Holding" : "Held";
Scenario3UpdateVisuals(sender as Border, holdingState);
}
private void bDoubleTapped_DoubleTapped(object sender,
DoubleTappedRoutedEventArgs e)
{
Scenario3UpdateVisuals(sender as Border, "Double Tapped");
}
private void bRightTapped_RightTapped(object sender,
RightTappedRoutedEventArgs e)
{
Scenario3UpdateVisuals(sender as Border, "Right Tapped");
}
private void bTapped_Tapped(object sender, TappedRoutedEventArgs e)
{
Scenario3UpdateVisuals(sender as Border, "Tapped");
}
private void Scenario3Reset(object sender, RoutedEventArgs e)
{
Scenario3Reset();
}
private void Scenario3Reset()
{
bTapped.Background = new SolidColorBrush(Colors.Red);
bHolding.Background = new SolidColorBrush(Colors.Red);
bDoubleTapped.Background = new SolidColorBrush(Colors.Red);
bRightTapped.Background = new SolidColorBrush(Colors.Red);
}