基本上我想有一些下拉列表作为网格视图的过滤器。当没有与所选过滤器匹配的网格视图项目时,它将显示一条消息,指出没有项目与您的搜索匹配(并显示下拉列表值)。我知道我可以通过后面的代码来实现这一点,但我只是想知道这样的事情是否可以工作。谢谢
<asp:gridview id="gv" runat="server" EmptyDataText="<%# "no items match" & dropdownlist.selectedvalue &"stuff" %>"发布于 2017-12-13 04:30:55
您需要将页面修改为如下所示(添加emptyDataTemplate和Label)
<asp:GridView ID="gv" runat="server"
DataBindingComplete="gv_DataBindingComplete"
OnPreRender="gv_PreRender">
<EmptyDataTemplate>
<asp:Label runat="server" ID="lbInfo" /></EmptyDataTemplate>
</asp:GridView>并在您的代码中使用以下代码
protected void gv_PreRender(object sender, EventArgs e)
{
if (gv.Rows.Count==0)
{
lbInfo.Text = "no items match " + ddlTest.SelectedItem + " stuff";
}
}发布于 2019-12-31 01:40:22
另一种解决方案:
<asp:GridView ID="gv" runat="server">
<EmptyDataTemplate>
<asp:Label ID="Label1" runat="server" Text='<%#EmptyData() %>' />
</EmptyDataTemplate>
</asp:GridView>代码隐藏:
protected string EmptyData()
{
if (gv.Rows.Count == 0)
{
return "no items match" & dropdownlist.selectedvalue & "stuff";
}
return string.Empty;
}https://stackoverflow.com/questions/47780940
复制相似问题