在第一次或最后一次单击repeatButton时采取操作
本文关键字:操作 repeatButton 单击 第一次 最后一次 | 更新日期: 2023-09-27 18:09:30
如何在RepeatButton
的第一次或最后一次点击时指定操作?
的例子:
标签初始设置为0
当RepeatButton
被按下时,值连续递增
当RepeatButton
不存在时,复位为0
或者,当按钮被按下时,立即将计数器设置为0,并开始递增
您不需要使用RepeatButton
来做您想做的事情。相反,最好使用标准的Button
并处理PreviewMouseDown
和PreviewMouseUp
事件。试试这样做:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Button Content="Press and Hold" PreviewMouseDown="Button_PreviewMouseDown"
PreviewMouseUp="Button_PreviewMouseUp" />
<TextBlock Grid.Column="1" Text="{Binding YourValue}" />
</Grid>
…
private DispatcherTimer timer = new DispatcherTimer();
private void Button_PreviewMouseDown(object sender, MouseButtonEventArgs e)
{
timer.Interval = TimeSpan.FromMilliseconds(100);
timer.Tick += Timer_Tick;
timer.Start();
}
private void Timer_Tick(object sender, EventArgs e)
{
YourValue++;
}
private void Button_PreviewMouseUp(object sender, MouseButtonEventArgs e)
{
timer.Stop();
}
您可以调整值增量之间的毫秒数以满足您的需求。