0
我的视图中有几个文本框。其中一个需要重点关注。数据模型中确切定义了哪一个。目前我在绑定完成后立即调用Focus方法。结果我得到错误,这意味着焦点不能设置。问题是什么时候应该在Silverlight中调用Focus方法
- 什么时候这样做是正确的?
- 我怎么知道这一刻在视图模型中而不知道任何视图?
我的视图中有几个文本框。其中一个需要重点关注。数据模型中确切定义了哪一个。目前我在绑定完成后立即调用Focus方法。结果我得到错误,这意味着焦点不能设置。问题是什么时候应该在Silverlight中调用Focus方法
正确的答案是安排通过Dispatcher.BeginInvoke设置焦点。这意味着视图模型必须具有对Dispatcher对象的引用,这有点棘手,但值得付出努力。
您是否尝试过在第一个LayoutUpdated之后执行此操作?这是你知道所有控件已经完成初始化的一个好点。有很多方法将事件绑定到视图模型。 –