2011-03-14 139 views
4

Telerik Rad控件在瀏覽器中顯示爲一條直線。但在Visual Studio設計中它正確顯示。Telerik Radgrid在瀏覽器中不顯示

<telerik:RadGrid ID="RadGrid1" runat="server" 
     onneeddatasource="RadGrid1_NeedDataSource"> 
    <MasterTableView ShowHeadersWhenNoRecords="false" AutoGenerateColumns="true"> 
    <NoRecordsTemplate> 
    <div>There are no records to display</div> 
    </NoRecordsTemplate> 
</MasterTableView> 

    </telerik:RadGrid> 

一些可以請幫我在這

+0

數據源中是否有任何數據?如果您在數據源爲空時執行「查看源代碼」,您是否可以看到div存在? – CyberDude 2011-03-15 14:02:14

回答

6

如果「RadGrid1」的數據源是沒有什麼/空控制有效沒有綁定,即使數據綁定()被調用。可以將空集合綁定到控件,以便顯示NoRecordsTemplate。

在VB.net:
RadGrid1.DataSource = new Object() {}

在C#:

RadGrid1.DataSource = new object[] { }; 
+0

不錯的簡單解決方案 – Jeremy 2013-01-16 02:32:30

0

有你需要設置第一,以顯示任何數據模板的幾件事情,首先你需要一個實際的數據返回null或空的源代碼,如果你只是爲了檢查目的而做這件事,並希望避免實際的數據源,那麼ItsPete提供的代碼是很好的。您還需要在MasterTableView標記中放置EnableNoRecordsTemplate =「true」。

看看這段代碼。

<telerik:RadGrid ID="RadGrid1" runat="server" GridLines="None" 
    DataSourceID="SqlDataSource1"> 
<MasterTableView EnableNoRecordsTemplate="true" ShowHeadersWhenNoRecords="false" 
     AutoGenerateColumns="False" datakeynames="ID" datasourceid="SqlDataSource1"> 
<NoRecordsTemplate> 
No Data Found. 
</NoRecordsTemplate> 
    <Columns> 
     <telerik:GridBoundColumn DataField="ID" DataType="System.Int32" 
      DefaultInsertValue="" HeaderText="ID" ReadOnly="True" SortExpression="ID" 
      UniqueName="ID"> 
     </telerik:GridBoundColumn> 
     <telerik:GridBoundColumn DataField="NAME" DefaultInsertValue="" 
      HeaderText="NAME" SortExpression="NAME" UniqueName="NAME"> 
     </telerik:GridBoundColumn> 
     <telerik:GridBoundColumn DataField="PASSWORD" DefaultInsertValue="" 
      HeaderText="PASSWORD" SortExpression="PASSWORD" UniqueName="PASSWORD"> 
     </telerik:GridBoundColumn> 
     <telerik:GridBoundColumn DataField="DEPARTMENT" DefaultInsertValue="" 
      HeaderText="DEPARTMENT" SortExpression="DEPARTMENT" UniqueName="DEPARTMENT"> 
     </telerik:GridBoundColumn> 
    </Columns> 
</MasterTableView> 
</telerik:RadGrid> 
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:Conn %>" 
    SelectCommand="SELECT * from Users WHERE ID = '0'"> 
</asp:SqlDataSource> 

這裏的數據列是無關緊要的(僅舉例)。有關RadGrid的更多信息,請訪問「Tips for using the RadGrid - Empty Data Message」。