【发布时间】:2021-11-06 04:07:45
【问题描述】:
我在 .NET 中有一个 WPF 按钮,我希望分别处理单击和双击事件。我目前已经使用超时/延迟来完成这项工作,它可以工作,但它很难看。我正在尝试找到一种使用 System.Reactive .NET 扩展的巧妙方法
Observables 是从我传递按钮的工厂方法创建的,我使用 FromEventPattern(button, "click") 方法。例如:
public IObservable<EventPattern<RoutedEventArgs>> SingleClickTestObservable(Button button)
{
return Observable.FromEventPattern<RoutedEventArgs>(button, "Click");
}
public IObservable<EventPattern<RoutedEventArgs>> DoubleClickTestObservable(Button button)
{
return Observable.FromEventPattern<RoutedEventArgs>(button, "DoubleClick");
}
问题是当我订阅这些 Observables 时,SingleClick 会同时触发单击和双击。
怎样才能让它按预期工作,这样当双击被触发时,单击就不会了。
【问题讨论】:
标签: c# .net observable system.reactive