2013-03-13 32 views
0

我在ASP.NET的gridview上显示数据时遇到了麻烦。在ASP.NET的Gridview上显示数据的问题

这里是我的GridView

<asp:GridView ID="grvConsumptions" runat="server" AllowSorting="true" 
    AllowPaging="true" AutoGenerateColumns="false" RowStyle-CssClass="txtB" 
    DataKeyNames="idConsumption" PageSize="30" Width="100%" CssClass="borders" 
    HeaderStyle-CssClass="subT" AlternatingRowStyle-CssClass="txtA" 
    onpageindexchanging="grvConsumptions_PageIndexChanging" 
    onsorting="grvConsumptions_Sorting"> 
    <PagerStyle HorizontalAlign="Right" CssClass="subT" /> 

    <EmptyDataTemplate> 
     <asp:Literal runat="server" ID="ltNoInformationFound"> 
      No Data Found 
     </asp:Literal> 
    </EmptyDataTemplate> 

    <Columns> 
     <asp:BoundField HeaderText="ID" ReadOnly="true" DataField="idConsumption" SortExpression="idConsumption" HtmlEncode="False" /> 
     <asp:BoundField HeaderText="No. Venta" ReadOnly="true" DataField="stationSaleNumber" SortExpression="stationSaleNumber" HtmlEncode="False" /> 

     <asp:TemplateField HeaderText="Trans"> 
      <ItemStyle HorizontalAlign="Center"> 
      </ItemStyle> 

      <ItemTemplate> 
       <asp:Image ID="imgPayment" runat="server" ImageUrl="images/icons/aro.gif"> 
       </asp:Image> 
      </ItemTemplate> 
     </asp:TemplateField> 

     <asp:BoundField HeaderText="Tarjeta" ReadOnly="true" DataField="cardCode" SortExpression="cardCode" HtmlEncode="False" /> 
     <asp:BoundField HeaderText="Fecha" ReadOnly="true" DataField="dateCreated" SortExpression="dateCreated" HtmlEncode="False" /> 
     <asp:BoundField HeaderText="Litros" ReadOnly="true" DataField="quantity" SortExpression="quantity" DataFormatString="{0:0.000}" HtmlEncode="False" /> 
     <asp:BoundField HeaderText="Descripción" ReadOnly="true" ItemStyle-Width="5%" DataField="description" SortExpression="description" /> 
     <asp:BoundField HeaderText="Precio Unitario" ReadOnly="true" DataField="price" SortExpression="price" HtmlEncode="False"/> 
     <asp:BoundField HeaderText="Importe" ReadOnly="true" DataField="total" SortExpression="total" HtmlEncode="False"/> 
     <asp:BoundField HeaderText="Kms" ReadOnly="true" DataField="mileage" SortExpression="mileage" HtmlEncode="False"/> 
    </Columns> 

    <HeaderStyle HorizontalAlign="Left" /> 
    <PagerStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
    <RowStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
    <EditRowStyle CssClass="txtB" /> 
    <EmptyDataRowStyle HorizontalAlign="Center" CssClass="tboxCombo" ForeColor="DarkGoldenrod" BorderWidth="0px" /> 
    <RowStyle CssClass="txtB" /> 
    <HeaderStyle CssClass="subT" /> 
    <AlternatingRowStyle CssClass="txtA" /> 
</asp:GridView> 

,这是我用一个简单的方法。

DataTable dtConsumptions = GetData(); 
grvConsumptions.DataSource = dtConsumptions; 
grvConsumptions.DataBind(); 

据我所知,我无法找到一个方法来调试,并找出数据号在GridView上显示(它始终显示标签未找到资料)。

我已经仔细检查了DataTable确实有数据,并且gridview请求的所有列都存在于数据表的列中。

我该如何解决这个问题或找到为什么不显示数据的例外?

+0

**对于调试:**删除'Columns'标签和它里面的一切。 'AutoGenerateColumns =“false”'到'AutoGenerateColumns =“true”'那么你看到了什么? – Win 2013-03-13 16:33:49

+0

你在绑定数据的事件? – 2013-03-13 16:36:00

+0

什么都没有......还没有找到数据 – Victor 2013-03-13 16:37:01

回答

0

的等待,我想通了(我还需要的一点点研究虽然)我有一个更新面板:和apparentely当我按下按钮,它只是重新加载标签,但它不重新加载gridview ...当我摆脱了更新面板,它的工作,gridview被重新加载