gpt4 book ai didi

c# - Datagrid 单元格格式在用户编辑后不保留?

转载 作者:行者123 更新时间:2023-11-30 22:37:36 27 4
gpt4 key购买 nike

我有一个具有以下单元格格式的数据网格

datagrid.rows[0].cells[0].Value =1;
datagrid.rows[0].cells[0].Style.Format ="#k";

这工作正常,输出将为 1k,但是当用户将单元格值示例编辑为 2 时,单元格格式将不会生效?

问题是如何在用户编辑后保留单元格格式?

谢谢

最佳答案

我猜您没有使用底层数据源。您正在将 DataGridViewRows 手动插入到 DataGridView 中。

如果您使用的是数据源,并且列数据类型为数字,则样式将适用于编辑和只读模式。

在您的情况下,您需要处理 DataGridViewCellFormatting 事件并在那里设置单元格的格式:

void dataGridView1_CellFormatting(object sender,
DataGridViewCellFormattingEventArgs e)
{
if (e.ColumnIndex == 0 && e.RowIndex == 0)
{
// if the underlying type is int
int value;
if(e.Value != null && int.TryParse(e.Value.ToString(), out value))
{
e.Value = value.ToString("#k");

/*** OR ***

e.Value = value;
e.CellStyle.Format = "#k";

*/
}
}
}

关于c# - Datagrid 单元格格式在用户编辑后不保留?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6438235/

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