silverlight 文本框焦点获得问题(在线等)
我在关闭ChildWindow的事件中让主页面的一个文本框获得焦点tetx.Focus();
加断点跟踪进去tetx.Focus();的返回值是TRUE ,按理,这时候页面中的控件应该有焦点。
但问题是他并没有获得焦点。
先给一段代码
- C# code
ChildKuCunList ChildKuCunList = new ChildKuCunList();ChildKuCunList.KufangID = ChuKuModel.库房名称;ChildKuCunList.Code = textBox.Text; ChildKuCunList.Closed += new EventHandler(ChildKuCunList_Closed);ChildKuCunList.Show();/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void ChildKuCunList_Closed(object sender, EventArgs e) { ChildKuCunList ChildKuCunList = sender as ChildKuCunList; if (ChildKuCunList.DialogResult == true) { ((ConStack.Children[StaCkPanelIndex] as StackPanel).Children[8] as TextBox).Focus(); } else { ((ConStack.Children[StaCkPanelIndex] as StackPanel).Children[0] as TextBox).Focus(); } }
两个关闭操作,1:弹出窗口中有Datagrid 在 Datagrid中回车选中行后关闭窗口时执行 ((ConStack.Children[StaCkPanelIndex] as StackPanel).Children[8] as TextBox).Focus();
返回值为true 但界面中该控件没有获得焦点。
2:点击关闭按钮 执行((ConStack.Children[StaCkPanelIndex] as StackPanel).Children[0] as TextBox).Focus();
可以正常获得焦点
为什么同样的关闭this.DialogResult = true; 一个不能获得焦点,一个能??????
望高手指教???
在线等。。。。。。。。。。。。
[解决办法]
试试换成下面的代码呢?
ChildKuCunList ChildKuCunList = new ChildKuCunList();
ChildKuCunList.KufangID = ChuKuModel.库房名称;
ChildKuCunList.Code = textBox.Text;
ChildKuCunList.Closed += new EventHandler(ChildKuCunList_Closed);
ChildKuCunList.ConStack = this.ConStack;
ChildKuCunList.Show();