wpf datagrid怎么得到焦点?用datagrid.focus()不行
如果用鼠标点WPF上的一个DataGrid控件,然后用键盘UP、Down方向键上下移动,则当前行也上下移动,但是如果用datagrid.focus()方法都焦点设置到da...
如果用鼠标点WPF上的一个DataGrid控件,然后用键盘UP、Down方向键上下移动,则当前行也上下移动,但是如果用datagrid.focus()方法都焦点设置到datagrid控件,那么就不会出现上面的效果,请问这是怎么回事呢?
展开
1个回答
展开全部
你得让里面行获得焦点
比如第一行:
var row = dataGrid.ItemsContainerGenerator.ContainerFromIndex(0) as FrameworkElement;
if(row != null)
row.Focus();
比如第一行:
var row = dataGrid.ItemsContainerGenerator.ContainerFromIndex(0) as FrameworkElement;
if(row != null)
row.Focus();
更多追问追答
追问
这样不行,得不到焦点
追答
调整到Input优先级呢?
row.Dispatcher.BeginInvoke(new Action(() => row.Focus()));
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询