读书人

lt;EmptyDataTemplategt;里的内容展示不出

发布时间: 2012-08-28 12:37:01 作者: rapoo

<EmptyDataTemplate>里的内容显示不出来啊....急啊
我在一个gridview里添加了<EmptyDataTemplate>想让他在没数据时也有提醒,而且是从另外的一个页面中copy来的,那个页面显示的好好 的,这里就显示不出来,EmptyDataText,也没用,可能有什么原因呢!


<asp:GridView ID="gv_payplan" runat="server" OnSelectedIndexChanged="gv_payplan_SelectedIndexChanged"
OnRowDeleting="gv_payplan_RowDeleting" SelectedRowStyle-CssClass="selected" CssClass="sublist btntd"
AutoGenerateColumns="False" AllowPaging="true" PageSize="5" EmptyDataText="请先填写好付款信息,然后点击‘增加’按钮将添加到本列表..">
<EmptyDataTemplate>
<table class="sublist" width="100%">
<tr>
<th>
序号</th>
<th>
付款时间</th>
<th>
付款比例</th>
<th>
付款金额</th>
<th>
删除</th>
<th>
选择</th>
</tr>
<tr>
<td colspan="6" align="center">
请先填写好付款信息,然后点击"增加"按钮将添加到本列表...</td>
</tr>
</table>
</EmptyDataTemplate>
<Columns>
<asp:TemplateField HeaderText="序号" ItemStyle-CssClass="center">
<ItemTemplate>
<asp:Label ID="lbid" runat="server" Text='<%#this.gv_payplan.Rows.Count+1 %>' BorderWidth="0"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderText="付款时间" DataField="date" DataFormatString="{0:yyyy-MM-dd}"
HtmlEncode="false" />
<asp:BoundField HeaderText="付款比例" DataField="rate" ItemStyle-CssClass="center" />
<asp:BoundField HeaderText="付款金额" DataField="money" ItemStyle-CssClass="right" />
<asp:CommandField ShowCancelButton="False" ShowDeleteButton="True" HeaderText="删除"
ButtonType="Image" DeleteImageUrl="~/images/delete.gif" ItemStyle-CssClass="center" />
<asp:CommandField ButtonType="Image" SelectImageUrl="~/images/select.gif" ShowCancelButton="False"
ShowSelectButton="True" HeaderText="选择" ItemStyle-CssClass="center" />
</Columns>
</asp:GridView>


请大侠帮忙解决,页面很丑亟待解决!!!

------解决方案--------------------


我这里可以,但是前提是Gridview要指—atasource并进行捆—atabind.
否则不显示。

HTML code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server">    <title>Untitled Page</title></head><body>    <form id="form1" runat="server">    <div>        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="SoftwareId"            DataSourceID="SqlDataSource1">            <Columns>                <asp:BoundField DataField="SoftwareId" HeaderText="SoftwareId" InsertVisible="False"                    ReadOnly="True" SortExpression="SoftwareId" />                <asp:BoundField DataField="BrandId" HeaderText="BrandId" SortExpression="BrandId" />                <asp:BoundField DataField="RangeId" HeaderText="RangeId" SortExpression="RangeId" />                <asp:BoundField DataField="ModelId" HeaderText="ModelId" SortExpression="ModelId" />                <asp:BoundField DataField="VersionId" HeaderText="VersionId" SortExpression="VersionId" />                <asp:BoundField DataField="MajorNumber" HeaderText="MajorNumber" SortExpression="MajorNumber" />                <asp:BoundField DataField="MinorNumber" HeaderText="MinorNumber" SortExpression="MinorNumber" />                <asp:BoundField DataField="Version" HeaderText="Version" SortExpression="Version" />                <asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />                <asp:BoundField DataField="Code" HeaderText="Code" SortExpression="Code" />                <asp:BoundField DataField="DefaultSoftware" HeaderText="DefaultSoftware" SortExpression="DefaultSoftware" />                <asp:CheckBoxField DataField="RestrictedAccess" HeaderText="RestrictedAccess" SortExpression="RestrictedAccess" />                <asp:BoundField DataField="DefaultTiming" HeaderText="DefaultTiming" SortExpression="DefaultTiming" />            </Columns>            <EmptyDataTemplate>                 <table class="sublist" width="100%">                                 <tr>                                     <th>                                         序号 </th>                                     <th>                                         付款时间 </th>                                     <th>                                         付款比例 </th>                                     <th>                                         付款金额 </th>                                     <th>                                         删除 </th>                                     <th>                                         选择 </th>                                 </tr>                                 <tr>                                     <td colspan="6" align="center">                                         请先填写好付款信息,然后点击"增加"按钮将添加到本列表... </td>                                 </tr>             </EmptyDataTemplate>        </asp:GridView>        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:PES_DEVConnectionString %>"            SelectCommand="select * from softwares where softwareid = 100000"></asp:SqlDataSource>        </div>    </form></body></html> 


[解决办法]
楼主在<EmptyDataTemplate> 中的代码是没有问题的,
<EmptyDataTemplate>... </EmptyDataTemplate> 中数据的显示,
是在数据绑定时,数据的Count为0时才显示!!
[解决办法]
<EmptyDataTemplate> 中的代码是没有问题的,
<EmptyDataTemplate>... </EmptyDataTemplate> 中数据的显示,
是在数据绑定时,数据的Count为0时才显示!!

读书人网 >asp.net

热点推荐