EmptyDataTemplate在Empty时不显示

时间:2015-01-15 20:21:13

标签: asp.net sql-server

我有一个具有EmptyDataTemplate的gridview,但是没有数据时它没有显示。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White"
    BorderColor="Black" BorderStyle="Solid" BorderWidth="1px" CellPadding="3" DataKeyNames="TransID"
    Font-Size="Small" GridLines="Vertical" HorizontalAlign="Center" PageSize="50"
    AutoGenerateDeleteButton="True" AllowSorting="True" >
    <PagerSettings FirstPageText="First" LastPageText="Last" Mode="NextPreviousFirstLast"
        NextPageText="Next" />
    <RowStyle BackColor="#EEEEEE" ForeColor="Black" />
    <Columns>
        <asp:CommandField ShowSelectButton="True" />
        <asp:BoundField DataField="TransID" HeaderText="Transaction ID" InsertVisible="False"
            ReadOnly="True" SortExpression="TransID">
            <HeaderStyle Font-Underline="False" />
        </asp:BoundField>
        <asp:BoundField DataField="LicNumFrom" HeaderText="License Number From" SortExpression="LicNumFrom" />
        <asp:BoundField DataField="LicNameFrom" HeaderText="Name From" SortExpression="LicNameFrom" />
        <asp:BoundField DataField="LicNumTo" HeaderText="License Number To" SortExpression="LicNumTo" />
        <asp:BoundField DataField="LicNameTo" HeaderText="Name To" SortExpression="LicNameTo" />
        <asp:BoundField DataField="DateOfDelivery" HeaderText="Date Of Delivery" SortExpression="DateOfDelivery"
            DataFormatString="{0:MM/dd/yyyy}" />
        <asp:BoundField DataField="Status" HeaderText="Status" SortExpression="Status" />
    </Columns>
    <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
    <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
    <SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
    <HeaderStyle BackColor="#2D5278" Font-Bold="True" ForeColor="White" />
    <AlternatingRowStyle BackColor="#DCDCDC" />
    <EmptyDataTemplate>
        <div>
            No Data Available
        </div>
    </EmptyDataTemplate>
</asp:GridView>

它显示的只是一个小方块。我已尝试在EmptyDataTemplate中放置一个Label,但它也不起作用。

1 个答案:

答案 0 :(得分:0)

您应该检查EmptyDataTemplate的CSS样式。它看起来像是在方框中得到它,但文本与背景颜色相同,因此它们在背景中丢失。您正在获得该方框,因为您正在向GridView应用1px黑色边框,默认情况下也会应用于EmptyDataTemplate。

尝试使用与GridView背景颜色不同的任何颜色将EmptyDataRowStyle-ForeColor =“#000”属性应用于GridView并检查结果。