Как отобразить текст в gridview "Нет записей найдено", когда нет записи
У меня есть iframe, где у меня есть несколько диаграмм и gridviews, где диаграммы и gridviews извлекают данные из базы данных. Когда записи не обнаружили никаких проблем, но для некоторых пользователей нет записей для одного из gridviews, где я должен отображать сообщение "Не найдено записей".
любезно предложите мне об этом.
Я попробовал приведенный ниже код, который отображает сообщение, но отображается в маленьком поле, но мне нужно отображать внутри gridview.
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<EditRowStyle BackColor="#999999" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<EmptyDataTemplate>No records Found</EmptyDataTemplate>
Здесь я не показываю заголовок сетки, но мне нужно!
Ответы
Ответ 1
Установите свойство ShowHeaderWhenEmpty
в GridView на true
.
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.showheaderwhenempty.aspx
Но вам все равно нужно DataBind gridview. Этот фрагмент кода работал у меня:
<asp:GridView ID="GridView1" runat="server" ShowHeaderWhenEmpty="True" EmptyDataText="No records Found">
<Columns>
<asp:boundfield datafield="CustomerID" headertext="Customer ID"/>
<asp:boundfield datafield="Name" headertext="Name"/>
</Columns>
</asp:GridView>
Ответ 2
попробуйте установить emptydatatext
и ShowHeaderWhenEmpty
<asp:gridview id="GridView"
datasourceid="DataSource"
autogeneratecolumns="true"
emptydatatext="No data in the data source."
runat="server"
ShowHeaderWhenEmpty="True">
</asp:gridview>
Ответ 3
Подход, который я использую для gridview для найденных записей, заключается в том, что, когда в базе данных нет записей, я очищаю все строки в сетке и добавляю новую строку в сетке в виде текста, который не найден, или вы можете создайте функцию без найденного результата, а затем используйте ее в функции привязки gridview. Когда нет записей, вы можете вызвать эту функцию.
Ответ 4
Для тех, кто все еще использует ASP.net 2 или 3.5, свойство ShowHeaderWhenEmpty
не существует. Чтобы обойти это, просто используйте свойство EmptyDataText="..."
и сделайте gridview видимым только при обнаружении данных (в коде позади).