如何在数据表自动生成的 telerik gridview 中显示未找到记录消息?
How to display no records found message in auto generated telerik gridview from datatable?
我正在使用 dataset
动态创建 GridView
但是当我的 GridView
中没有记录时出现问题所以在这种情况下我想显示我的 GridView
所有带有 No Records Found
.
的列
这是我的代码,但 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,您需要将 NoMasterRecordsText
属性 更改为 MasterTableView
。
ASPX:
<MasterTableView NoMasterRecordsText="No Records Found" >
或
C#:
protected void Page_Load(object sender, EventArgs e)
{
GridView1.MasterTableView.NoMasterRecordsText = "No Records Found";
}
编辑:使用 OnNeedDataSource
将数据绑定到 GridView
<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;
}
}
Gridview ASPX 页面放置 EmptyDataText
<asp:GridView ID="GvZone" runat="server" AutoGenerateColumns="False"
EmptyDataText="No Records Found !" >
</asp:GridView>
我正在使用 dataset
动态创建 GridView
但是当我的 GridView
中没有记录时出现问题所以在这种情况下我想显示我的 GridView
所有带有 No Records Found
.
这是我的代码,但 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,您需要将 NoMasterRecordsText
属性 更改为 MasterTableView
。
ASPX:
<MasterTableView NoMasterRecordsText="No Records Found" >
或
C#:
protected void Page_Load(object sender, EventArgs e)
{
GridView1.MasterTableView.NoMasterRecordsText = "No Records Found";
}
编辑:使用 OnNeedDataSource
将数据绑定到 GridView<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;
}
}
Gridview ASPX 页面放置 EmptyDataText
<asp:GridView ID="GvZone" runat="server" AutoGenerateColumns="False"
EmptyDataText="No Records Found !" >
</asp:GridView>