2012-06-07 35 views
1

我的WPF应用程序在其几个屏幕上使用Telerik RadGridView控件。我有一个要求,即当用户点击RadGridView中的一行时,我应该切换到另一个屏幕并显示有关该行的详细信息。我将一个处理程序连接到了SelectionChanged事件,并且这种处理方式起作用,除非用户第二次单击所选行时没有任何反应。这是有道理的,因为选定的行没有被改变。如何检测RadGridView控件的选定行上的单击

如何检测第二次点击同一行并显示第二个屏幕?

托尼

+0

您是否找到解决方案? – jimmyjambles

回答

2

您可以将一个处理程序添加到GridView上的MouseUp事件中。检查是否有任何选定的单元格并从那里响应。即使已经有选择,它也会启动。

MouseDown事件会触发鼠标点击,但在GridView更新selction之前,释放鼠标应该火的时候,选择已经调整

您还可以附加一个处理程序,在代码 - 每个个体细胞后面如下

(this.GridView as RadGridView).AddHandler( 
    GridViewCell.MouseUpEvent, 
    new EventHandler<Telerik.Windows.RadRoutedEventArgs>(this.OnMouseUp)); 
+0

附加到每个单独的单元格将允许您避免选择更新,如果网格是第二次左键单击单元格外的某处,导致选择无法更改 – jimmyjambles

+0

我完全忘记了这个问题。我在需要它的表单上实现了一个'MouseUp'事件处理程序。 –

0

我想你可能会尝试通过MouseLeftButtonDown事件或PreviewMouseLeftButtonDown事件来实现这一目标。

相关问题