gpt4 book ai didi

c# - 防止在 DataGrid 中按下回车键时自动更改行

转载 作者:太空宇宙 更新时间:2023-11-03 10:45:03 24 4
gpt4 key购买 nike

我在 WPF 中有一个 DataGrid,如下所示:

DataGrod rows

DataGrid 上面的行,代表以下示例模型:

    class MyModel
{
public string Value { get; set; }
public string Message { get; set; }
}

我想防止在编辑文本框后按回车键时自动选择发生变化,因此在编辑第一行文本框内容时不会移动到第二行,右侧的标签将在某些情况下更新,例如:如果文本仅包含数字字符,则文本正常,否则出错。

我该怎么做?

我尝试通过使用我的 View KeyPressed、PreviewKeyDown 和 LostFocus 事件背后的代码来执行此操作,如下所示,但它不起作用:(

    if (e.Key == Key.Enter || e.Key == Key.Return)
{
var dataGrid = (DataGrid) sender;
if (dataGrid != null)
{
var row = dataGrid.ItemContainerGenerator.ContainerFromItem(dataGrid.SelectedItem) as DataGridRow;
base.OnPreviewKeyDown(e);
//e.Handled = true;
if (row != null)
dataGrid.SelectedItem = row.Item;
}
else
base.OnPreviewKeyDown(e);
}

最佳答案

试试这个改变。

//base.OnPreviewKeyDown(e);
e.Handled = true;

关于c# - 防止在 DataGrid 中按下回车键时自动更改行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23779203/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com