Это действительно зависит от того, как вы передаете свои данные на странице клиента. Вы используете формы asp.net с помощью GridView? Вы сами генерируете html для своих данных?
Обычно я занимаюсь этим с помощью классов css. Я буду иметь класс для помеченных элементов, как это:
.late
{
color: #f00;
}
А в коде позади, где мой HTML генерируется, если вы создания всех HTML себя:
foreach(Item item in items)
{
string cls = "";
if (item.IsLate)
cls = " class='late'";
html += "<div" + cls + ">" + item.Text + "</div>";
}
Это создаст <div>Item1</div>
для незавершенного элемента и <div class="late">Item2</div>
для позднего элемента. У вас также может быть класс для не-поздних элементов, если вы хотите, чтобы они тоже были в стиле. Достаточно легко.
Если детали вы отметиди серверные элементы управления, и вы не создаете HTML-код самостоятельно, вы можете назначить класс им:
if (item1.IsLate)
myTextBox.CssClass = "late";
Если данные привязаны к GridView, вам может иметь обработчик события для RowDataBound
, и сделать что-то вроде этого:
protected void gridview_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Item item = e.Row.DataItem as Item;
if (item.IsLate)
e.Row.CssClass = "late";
}
}
Вы также можете применить стиль к отдельной ячейке в GridView:
// 3rd cell
e.Row.Cells[2].CssClass = "late";
Надеюсь, что один из этих вариантов соответствует вашему сценарию.