如何确保事件处理程序的顺序

本文关键字:事件处理 程序 顺序 确保 何确保 | 更新日期: 2023-09-27 18:35:08

假设,在 WPF 中,我有以下用户控件:

public partial class FlipButton : UserControl
{
    private Boolean _isOn = false;
}
public Boolean isOn
{
    get { return _isOn; }
    set { if (value) FlipBtn.Background = onColor;
          else FlipBtn.Background = offColor; _isOn = value; }
}
private void FlipBtn_Click(object sender, RoutedEventArgs e)
{
    isOn = !isOn;
}

里面有相应的<Button Name="FlipBtn" Click="FlipBtn_Click">

现在,我想创建一个FlipButtonGroup,其中包含在网格中布局的按钮的集合,并具有处于"启用"状态的按钮的内部集合。每当单击按钮时,它都必须更新,这是我的问题:我能否以某种方式保证在FlipButtonGroup处理单击之前更新isOn值?

如何确保事件处理程序的顺序

请参阅事件处理程序执行顺序。您可以依赖按注册顺序调用它们。不过,这可能会在未来中断。