C# 如何在datatable自动生成的telerik gridview中显示“未找到记录”消息?

C# 如何在datatable自动生成的telerik gridview中显示“未找到记录”消息?,c#,asp.net,gridview,datatable,telerik-grid,C#,Asp.net,Gridview,Datatable,Telerik Grid,我正在使用数据集动态创建GridView,但当我的GridView中没有记录时,就会出现问题,因此在这种情况下,我希望显示GridView,其中包含所有未找到记录的列 这是我的代码,但GridView不可见: var table = new DataTable(); table .Columns.Add("Source"); table .Columns.Add("Destination"); table .Columns.Add("Date"); If() { //All my

我正在使用
数据集动态创建
GridView
,但当我的
GridView
中没有记录时,就会出现问题,因此在这种情况下,我希望显示
GridView
,其中包含所有
未找到记录的列

这是我的代码,但GridView不可见:

 var table = new DataTable();
 table .Columns.Add("Source");
 table .Columns.Add("Destination");
 table .Columns.Add("Date");

If()
{
  //All my logics where i am generating value for this "Source,Destination,Date" Column.
  foreach (var item in data)
  {
     table.Rows.Add(Source,Destination,Date);
  }
  //Binding to Gridview
 GridView1.DataSource = dt;
 GridView1.DataBind();
}
else
{
   //No Records so display gridview with "No records" along with columns.
      GridView1.DataSource = dt; //Here i will not be having any data for this 3 columns Source,Destination,Date
      GridView1.DataBind();//But My gridview is not visible
}
Aspx

<telerik:RadGrid ID="GridView1" runat="server">
                            <MasterTableView AutoGenerateColumns="true" NoMasterRecordsText="No Records Found">
                                <Columns>
                                </Columns>
                            </MasterTableView>
                        </telerik:RadGrid>

预期产出:


您需要更改gridview的
MasterTableView
NoMasterRecordsText
属性

ASPX:

编辑:使用OnnedDataSource将数据绑定到GridView

<telerik:RadGrid ID="GridView1" runat="server" OnNeedDataSource="GridView1_NeedDataSource">
    <MasterTableView AutoGenerateColumns="true" NoMasterRecordsText="No Records Found">
           <Columns>
           </Columns>
    </MasterTableView>
</telerik:RadGrid>

Gridview ASPX页面放置
EmptyDataText

<asp:GridView ID="GvZone" runat="server" AutoGenerateColumns="False" 
    EmptyDataText="No Records Found !"  >
 </asp:GridView>


OP要求的是
telerik gridview
而不是
asp gridview
我已经说过我也想要我的专栏。这将显示我的专栏。请查看您发布的我的输出,并为
gridview添加
aspx
代码查看更新的问题,但您的解决方案不起作用。griddisappears@Learning你需要在网格视图的
NeedDataSource
事件上绑定数据。请参阅此链接:如果您在
NeedDataSource
事件中将数据绑定到gridview,那么您将在gridview中收到“未找到记录”消息。请参阅我是此asp.net的新手,请您用您所说的内容更新您的ans,但请记住在定义列时使用我的数据集
<telerik:RadGrid ID="GridView1" runat="server" OnNeedDataSource="GridView1_NeedDataSource">
    <MasterTableView AutoGenerateColumns="true" NoMasterRecordsText="No Records Found">
           <Columns>
           </Columns>
    </MasterTableView>
</telerik:RadGrid>
// GridView1_NeedDataSource
protected void GridView1_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
{
    BindGridViewData();
}

//Bind Grid View 
private void BindGridViewData()
{
 var table = new DataTable();
         table .Columns.Add("Source");
         table .Columns.Add("Destination");
         table .Columns.Add("Date");

       if()
       {

         foreach (var item in data)
         {
            table.Rows.Add(Source,Destination,Date);
         }
         //Binding to Gridview
         GridView1.DataSource = dt;

      }
      else
      {

          GridView1.DataSource = dt; 

      }
}
<asp:GridView ID="GvZone" runat="server" AutoGenerateColumns="False" 
    EmptyDataText="No Records Found !"  >
 </asp:GridView>