Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当用户在Silverlight中按Tab键时,将焦点从DataGrid的最后一个单元格转移到另一个控件_C#_Xaml_Silverlight_Datagrid - Fatal编程技术网

C# 当用户在Silverlight中按Tab键时,将焦点从DataGrid的最后一个单元格转移到另一个控件

C# 当用户在Silverlight中按Tab键时,将焦点从DataGrid的最后一个单元格转移到另一个控件,c#,xaml,silverlight,datagrid,C#,Xaml,Silverlight,Datagrid,我正在Silverlight应用程序中使用Datagrid组件。用户使用Tab键导航到Datagrid行和列。当用户位于Datagrid的最后一个单元格中时,我不想将焦点移动到Datagrid之外的特定控件 我使用了label控件的LostFocus事件,它位于最后一个单元格中。但是,我无法确定引发事件的行或单元格 请给出建议,如何从Label事件或任何Datagrid事件检测Datagrid的最后一个单元格。这是我能想到的最简单的方法。在DataGrid上进行设置,然后在DataGrid中的最

我正在Silverlight应用程序中使用Datagrid组件。用户使用Tab键导航到Datagrid行和列。当用户位于Datagrid的最后一个单元格中时,我不想将焦点移动到Datagrid之外的特定控件

我使用了label控件的LostFocus事件,它位于最后一个单元格中。但是,我无法确定引发事件的行或单元格


请给出建议,如何从Label事件或任何Datagrid事件检测Datagrid的最后一个单元格。

这是我能想到的最简单的方法。在DataGrid上进行设置,然后在DataGrid中的最后一件事之后立即将您想要的控件设置为焦点,使其成为xaml DOM顺序中的下一件事,这样FocusManager的默认逻辑顺序将为您完成工作。感谢Chris的帮助…我不希望通过xaml默认流。我有一个特定的控制,我需要集中精力。因此,我想在Datagrid的最后一个单元格上引发一个事件,并将焦点转移到所需的控件上。另外,TabIndex也没用,因为视图上有很多控件,这些控件在各种情况下都会出现。就我个人而言,我从来没有硬设置过TabIndex,这就是好的UI架构的要点。因此,能见度条件等与此无关。祝你好运。