您需要處理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";
}
}
使用行數據綁定 – 2013-02-26 05:48:27