2013-03-13 33 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被重新加載