我正在使用数据网格视图。 我有一个对象列表。
class abc{
public int i{get;set;}
public long b{get;set;}
}
//in Form Load
List<abc> objList = new List();
listpopulate(); // populate the list.
datgridvew.dtasource = objList;
我想要显示“ - ”Objabc.i value = 0
并希望在Objabc.b = 1000
显示“好”
我尝试了单元格默认格式但是徒劳无功。
答案 0 :(得分:0)
你可以使用一个事件,例如:
DataGridView.CellValueChanged Event
或者像这样使用DataGridView.CellFormatting事件:
private void DataGridView1_CellFormatting(object sender,
DataGridViewCellFormattingEventArgs e)
{
DataGridView dgv = (DataGridView)sender;
if (dgv.Columns[e.ColumnIndex].Name == "i" &&
e.RowIndex >= 0 &&
dgv["i", e.RowIndex].Value is int) &&
(((int)dgv["i", e.RowIndex].Value) == 0)
{
e.Value = "-";
e.FormattingApplied = true;
}
}
else if (dgv.Columns[e.ColumnIndex].Name == "b" &&
e.RowIndex >= 0 &&
dgv["b", e.RowIndex].Value is int) &&
(((int)dgv["b", e.RowIndex].Value) == 1000)
{
e.Value = "Good";
e.FormattingApplied = true;
}
}
}
答案 1 :(得分:-1)
你可以在客户端
上使用Jquery
吗?
$(document).ready(function () {
$(".GRIDVIEWCLASSNAME").find("td").each(function () {
if ($(this).text() == "0")
{
$(this).html("-");
}
if ($(this).text() == "1000")
{
$(this).html("Good");
}
});
});