WPF 和 MVVM。显示和隐藏带有超时的标签

WPF and MVVM. Display and hide a label with a timeout

在我的 MVVM 应用程序中,我希望创建一个自动关闭的弹出窗口来向用户通知一些信息(例如 "data changes saved successfully")。 所以,我在表单中放置了一个标签,绑定到一个 VM 属性。然后,我希望设置我的消息并在延迟(1 秒)后取消它。但它似乎不起作用。该应用程序等待一段时间,并显示最终状态(即:当用户按下 "save" 按钮时,应用程序 "waits" 一秒钟,然后标签为空)。 有什么想法吗?谢谢

为什么不能在WPF中使用普通的弹出窗口

<Popup Margin="10,10,0,13" Name="Popup1" HorizontalAlignment="Left"  VerticalAlignment="Top" Width="194" Height="200" IsOpen="True">  
    <StackPanel>  
        <TextBlock Name="McTextBlock"   
         Background="LightBlue" >  
        This is popup text   
       </TextBlock>  
        <Button Content="This is button on a Pupup" />  
    </StackPanel>  

public void show()
{
  Popup1.IsOpen = true;
  Thread t = new Thread(hide);
  t.Start();
}

private void hide() {
  Thread.Sleep(5000);
  Popup1.IsOpen = false;
}

要显示弹出窗口时调用显示函数