[英]how can i change specific datagridview cell value?
我有来自数据库的数据,但数据库记录上的一个属性是位(布尔值)。 例如
name, surname, date, itHave
A B 2020 1//
C D 2021 0
表单应用端,数据没问题。 我可以看到记录。 但我想将 1 和 0 更改为 Yes 或 No。
我试过数字(datagridview的计数)
for( i=0; i< number; i++){
if (dataGridView1.Rows[i].Cells[3].Value.ToString() =="1"){
MessageBox.Show("Test");
dataGridView1.Rows[i].Cells[3].Value = "Yes";
}
}
MessageBox.Show("测试"); // 这正在运行,但它没有发生。
我该如何解决?
您的示例看起来不错并且有效。 我在“It Have”列中创建了初始DataGridView
,其中包含一些0-1
值:
然后使用您的示例(通过添加三元稍微编辑):
for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)
{
DataGridViewCell cell = dataGridView1.Rows[i].Cells[3];
cell.Value = cell.Value.ToString() == "1" ? "Yes" : "No";
}
并获得Yes/No
而不是1-0
:
请注意,您的MessageBox.Show("Test");
会阻止代码执行,直到您关闭它。
以人类可读的文本制作您的数据库数据,您可以在 LINQ 中使用匿名类型:
var items = mydbitems.Select(x => new
{
Name = x.name,
Surname = x.surname,
Date = x.date,
itHave = x.itHave == 1 ? "yes" : "no"
};
datagridview.DataSource = items.ToList();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.