我有一个带有文本框的主窗口,其中焦点被绑定到一个属性,这是xmal:
<TextBox Text="{Binding Path=Name, Mode=TwoWay" x:FocusExtension.IsFocused="{Binding TxtFocused, Mode=TwoWay}"/>在我的主窗口视图模型中,我可以更改布尔属性TxtFocused的值,它会将文本框聚焦与否,取决于它的值。
然后我有一个子窗口,有它自己的视图模型,在该视图模型上,我可以访问主窗口视图模型。关闭此窗口时,在子窗口视图模型中,我访问主窗口视图模型的属性TxtFocused,并将其设置为true。
我的问题是,即使属性TxtFocused设置为true,在我的主窗口中,文本框也没有焦点。
我知道如何解决这个问题,但是它很难看,而且它违反了WPF/MVC规则,因为我试图使UI元素远离视图模型。
有人知道我做错了什么吗?
编辑:
我的子窗口出现在主窗口之上,没有改变其可见性,这是问题吗?
发布于 2016-10-16 14:07:07
使用MainWindow的MainWindow事件,并将其设置为true。
https://stackoverflow.com/questions/40069129
复制相似问题