2017-07-19 36 views
0

我想在将窗口显示为对话框之前清除WPF窗口内的TextBlock文本。文本块文本仅在调用ShowDialog窗口时清除WPF

但TextBlock上的文本显示一秒的先前值,然后自动清除。

有没有可能在将窗口显示为对话框之前清除文本?

这里是我的代码片段:

//Code in Window Control: 
public string PopupTitle 
{ 
    get 
    { 
     string response = string.Empty; 
     this.Dispatcher.Invoke((Action)delegate 
     { 
      response = lbl_PopupTitle.Text; 
     }, null); 
     return response; 
    } 
    set 
    { 
     this.Dispatcher.Invoke((Action)delegate 
     { 
      lbl_PopupTitle.Text = value; 
      lbl_PopupTitle.Visibility = string.IsNullOrEmpty(value) ? Visibility.Collapsed : Visibility.Visible; 
     }, null); 
    } 
} 

//Code to call this window: 

PopupWindow popup = new PopupWindow(); 
popup.PopupTitle = string.Empty; 
popup.ShowDialog(); 

回答

1

你为什么要调用的setter Dispatcher.Invoke?如果要在ShowDialog方法被调用之前立即重置文本,请不要这样做:

​​