Wpf DataGrid DoubleClick 有奇怪的行为

发布于 2024-10-05 06:37:22 字数 184 浏览 7 评论 0原文

我正在使用 Wpf DataGrid。我已经处理了 DataGrid 的 MouseDoubleClick 事件,以在单独的页面中详细打开记录。因此,功能应该就像我双击记录一样,它应该在单独的页面中打开。目前,当我双击 DataGrid 标题(列标题)或 ScrollBar 时,需要双击所选行(所选记录)。如果只双击该行,我希望它双击该行。请任何帮助!

I am working with Wpf DataGrid. I have handled MouseDoubleClick event of DataGrid to open the record in detail in separate page. So the functionality should be like I double click on a record and it should open in separate page. Currently When I double-click on the DataGrid Header(column header) or on ScrollBar it takes double-click of the selected row(selected record). I want it to take double click of row if only double-clicked on the row. Any help please!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

司马昭之心 2024-10-12 06:37:22

尝试处理 DataGrid 中的 LoadingRow 事件,然后处理每行中的 DoubleClick 事件:

private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e)
{
    e.Row.MouseDoubleClick += new MouseButtonEventHandler(Row_MouseDoubleClick);
}

Try to handle LoadingRow event in DataGrid and then the DoubleClick event in every row:

private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e)
{
    e.Row.MouseDoubleClick += new MouseButtonEventHandler(Row_MouseDoubleClick);
}
维持三分热 2024-10-12 06:37:22

当重新调用 DataGrid(单击列标题)时,有时会再次触发 LoadingRow 事件。

我必须取消订阅并重新订阅 MouseDoubleClick 才能完成此操作:

private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e) {
    e.Row.MouseDoubleClick -= Row_MouseDoubleClick;
    e.Row.MouseDoubleClick += Row_MouseDoubleClick;
}

When resorting the DataGrid (clicking on column headers) the LoadingRow event is fired again sometimes.

I had to unsubscribe and resubscribe to the MouseDoubleClick to make this work:

private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e) {
    e.Row.MouseDoubleClick -= Row_MouseDoubleClick;
    e.Row.MouseDoubleClick += Row_MouseDoubleClick;
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文