[WinUI 3][RepeatButton] クリック操作の繰り返しが開始されるタイミングを設定する

スポンサーリンク

RepeatButton コントロールはボタンが押されてから離されるまで、繰り返し Click イベントを発生させるボタンです。

この記事では RepeatButton の Click イベントが開始されるタイミングを設定する方法について説明をします。

公式サイト情報はコチラを参照してください。

Click イベントが発生するタイミングを設定する例

Click イベントが発生するタイミングを設定する例

環境

開発環境 Microsoft Visual Studio Enterprise 2019
Version 16.11.5
Framework Microsoft .NET Framework Version 4.8.04161

クリック操作の繰り返しが開始されるタイミングを設定する

クリック操作の繰り返しが開始されるタイミングは、Delay プロパティで設定します。単位はミリ秒です。

以下は、[Click me!!] ボタンを押してから、クリック操作の繰り返しが開始されるまでのタイミングを 3秒後に設定する例です。

XAMLの例

以下は XAML で Delayプロパティに 3000 を指定して、Click してから3秒後にイベントが発生するようにしています。

XAML の例

<Window
    x:Class="WinUISample.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:WinUISample"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <StackPanel x:Name="myStackPanel" Orientation="Vertical" HorizontalAlignment="Left" >

        <RepeatButton Content="Click me!!"
                      Delay="3000"
                      Click="RepeatButton_Click" />
        <TextBlock x:Name="myTextBlock" />
    </StackPanel>
</Window>

C# の例

private void RepeatButton_Click(object sender, RoutedEventArgs e)
{
    _clicks += 1;
    myTextBlock.Text = _clicks.ToString();
}

C# の例

先ほどの XAML の例を C# にしたものが以下です。

Delay ボタンに 3000 を指定して、3秒後に Click イベントが発生するようにしています。

public MainWindow()
{
    this.InitializeComponent();
    myRepeatButton.Delay = 3000;
}

private static int _clicks = 0;

private void RepeatButton_Click(object sender, RoutedEventArgs e)
{
    _clicks += 1;
    myTextBlock.Text = _clicks.ToString();
}
Click イベントが発生するタイミングを設定する例

Click イベントが発生するタイミングを設定する例

WinUi Tips

本サイトでまとめている WinUI Tips の一覧はこちらから確認できます。

Please follow and like us:

コメント

タイトルとURLをコピーしました