RowDataBound イベントを処理し、e.Row アイテムに入り、CSS クラスを割り当てるか、背景色を直接設定する必要があります。後で再コンパイルせずにレンダリングを変更できるように、CSS クラスを設定することをお勧めします。
<asp:GridView ID="GridView1" runat="server" OnRowDataBound="GridView1_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="Holiday Region">
<ItemTemplate>
<asp:Label ID="lblholdareg" runat="server" Text='<%# Eval("Holidaregion") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
コード ビハインドでは、データ ソースとして DataTable を使用していると想定し、データ構造に合わせてコードを更新する必要がありました。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
System.Data.DataRow row = (System.Data.DataRow)e.Row.DataItem;
if (row["Holidaregion"] == null || row["Holidaregion"].ToString().Trim().Length == 0)
{
e.Row.CssClass = "row-empty";
}
else
{
e.Row.CssClass = "row-full";
}
}