我有一个 MainWindow,其中包含一个文本块 [statusTextblock],它绑定到一个字符串 [StatusText]。StatusTextblock 需要显示来自另一个窗口的组合框结果。当它在另一个窗口中发生更改时,我将这些数据传递回主窗口,并且我已经制作了一个静态方法来在发生这种情况时更改字符串。
然而,这一切的静态使我无法在任何时候将我的文本框元素更改为 StatusText 的新值。
我考虑过解决方法来改变用户何时返回主窗口,但我没有成功。我尝试了 activate 和 uielement gotfocus 事件处理程序(我觉得第二个仍然是一个可能的修复)。
如果这很重要,主窗口也恰好总是打开的。我也更喜欢用代码做事而不是 xaml,但如果有任何帮助,我将不胜感激。
有任何想法吗?
MainWindow xaml,然后程序入口方法,然后静态事件改变statusText
<TextBlock Margin="190,0,0,0" HorizontalAlignment="Right" Name="StatusTextBlock" Text= {Binding}" ></TextBlock>
public MainWindow() //Obviously more went here, but it's not relevent
{
StatusTextBlock.DataContext = statusText;
}
static public void changeStatusText(string status)
{
statusText = status;
}