У меня в сетке есть GridTemplateColumn, в котором отображается «INDEF» или «MA». Когда это «INDEF», я бы хотел, чтобы моя строка изменила цвет:
это моя попытка:
protected void grid_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = (GridDataItem)e.Item;
Label lbl = (Label)item.FindControl("test");
if (lbl.Text == "INDEF")
{
lbl.ForeColor = System.Drawing.Color.Red;
}
}
}
с кодом рассматриваемой колонки:
<telerik:GridTemplateColumn HeaderText="Type de tickets"
UniqueName="typedestickets">
<ItemTemplate><asp:Label id="test" runat="server"></asp:Label></ItemTemplate>
</telerik:GridTemplateColumn>
Но я заметил, добавив точку останова e.Item был не GridDataItem, а GridPagerItem (я не знаю почему)
Так что я попробовал это: (тоже не работает)
protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridPagerItem)
{
GridPagerItem item = (GridPagerItem)e.Item;
Label lbl = (Label)item.FindControl("test");
if (lbl.Text == "INDEF")
{
lbl.ForeColor = System.Drawing.Color.Red;
item.BackColor = System.Drawing.Color.Red;
lbl.BackColor = System.Drawing.Color.Red;
}
}
}
Заранее спасибо за помощь