在我的aspxgrid中,我已经动态创建了所有列,所以我有一个单元格包含三行中的三个状态。例如。
Item Status Date
1st 2nd . .... ...
Booked 2 4 5 1 2 4........
1 Available 1 1 1 1 1 1........
Not Avail 0 0 0 0 0 0........
所以这些细胞是1行。我使用了customcolumndisplaytext事件来执行此操作。现在我想为三个状态行提供不同的颜色。你能帮帮我吗?我需要这样做,有几个项目,每个项目我有三个状态。 有没有不同的方法,请赐教。
谢谢, Mriganka
答案 0 :(得分:0)
您应该使用GridViewDataColumn.DataItemTemplate结合简单的html元素来实现这一目标。另外,请查看DataItemTemplate demo。
要获得更简单的解决方案,请将CustomColumnDisplayText中的e.DisplayText
设置为html。
以下是CustomColumnDisplayText
事件处理程序的示例,它在单元格内交替显示单词颜色:
protected void ASPxGridView1_CustomColumnDisplayText(object sender, ASPxGridViewColumnDisplayTextEventArgs e)
{
if ("job_desc".Equals(e.Column.FieldName))
{
e.DisplayText = "";
string[] tokens = ((string)e.Value).Split(' ');
for (int i = 0; i < tokens.Length; i++)
{
if (i % 2 == 0)
{
e.DisplayText += "<span style='color:red'>" + tokens[i] + @"</span>";
}
else
{
e.DisplayText += "<span style='color:blue'>" + tokens[i] + @"</span>";
}
e.DisplayText += " ";
}
}
}