Member 8459400 Ответов: 6

Чтобы показать пустой gridview, когда нет доступных для отображения данных


привет,
у меня есть gridview, который получает данные из базы данных.я могу выполнять поиск и добавление данных.но когда u ищет запись, которой нет, я буду отображать сообщение в метке, присутствующей над d gridview.но моя проблема заключается в том, что мне нужно отобразить верхний и Нижний колонтитулы(вставка через нижние колонтитулы)
пожалуйста, помогите мне...мне нужно сделать это в ближайшее время
спасибо

6 Ответов

Рейтинг:
36

devbtl

вы можете сделать это с помощью

if (dt.Rows.Count > 0)
                {
                    grid1.DataSource = dt;
                    grid1.DataBind();
                }
                else
                {
                    dt.Rows.Add(dt.NewRow());
                    grid1.DataSource = dt;
                    grid1.DataBind();
                    int totalcolums = grid1.Rows[0].Cells.Count;
                    grid1.Rows[0].Cells.Clear();
                    grid1.Rows[0].Cells.Add(new TableCell());
                    grid1.Rows[0].Cells[0].ColumnSpan = totalcolums;
                    grid1.Rows[0].Cells[0].Text = "No Data Found";
                }


Member 8459400

grid1 репрезентирует идентификатор gridview id...wats dt??

devbtl

объект DataTable ДТ=новый объект DataTable();
dt содержит данные gridview или просто вывод запроса select для вашего gridview.
grid1 - это ваш gridview

devbtl

новый sqldataadaptor("select * from table").fill(dt);
тогда этот набор ДТ для GridView с источником данных

Member 8459400

можете ли вы предложить какой-либо другой простой способ сделать это

devbtl

попробуйте метод abobe если произошла какая либо ошибка то пожалуйста дайте мне знать

Member 13745846

Да, именно это я и сделал. ДТ-это DataTable, который является подмножеством набора данных, который был представлен ds_login ранее. В остальном код тот же самый.

Рейтинг:
2

Member 8459400

есть ли простой способ сделать это, а затем использовать datatable??
я новичок в этом деле asp.net n мне нужно сделать это сейчас..пожалуйста помочь

Рейтинг:
1

Prince Antony G

It will Help u

if (ds_login.Tables[0].Rows.Count == 0)
 {
     #region header with no record
     ds_login.Tables[0].Rows.Add(ds_login.Tables[0].NewRow());
     GridView1.DataSource = ds_login;
     GridView1.DataBind();
     int columncount = GridView1.Rows[0].Cells.Count;
     GridView1.Rows[0].Cells.Clear();
     GridView1.Rows[0].Cells.Add(new TableCell());
     GridView1.Rows[0].Cells[0].ColumnSpan = columncount;
     GridView1.Rows[0].Cells[0].Text = "No Records Found";
     #endregion
 }
 else
 {
     GridView1.DataSource = ds_login;
     GridView1.DataBind();
 }


Venkatesh Chunchu

Спасибо, Что Работаешь На Меня.

Member 13745846

Это прекрасно решает проблему.

Рейтинг:
1

devbtl

может быть вы не получаете мою точку зрения. увидеть

сначала свяжите свой gridview

если вы используете datatable

затем проверьте условие if (dt.rows.count>0) или (<0)
если это > 0, то просто свяжите gridview. но в случае, если это < 0. тогда в операторе else попробуйте следующий код

dt.Rows.Add(dt.NewRow());
grid1.DataSource = dt;
grid1.DataBind();
int totalcolums = grid1.Rows[0].Cells.Count;
grid1.Rows[0].Cells.Clear();
grid1.Rows[0].Cells.Add(new TableCell());
grid1.Rows[0].Cells[0].ColumnSpan = totalcolums;
grid1.Rows[0].Cells[0].Text = "No Data Found";



если произошла какая-либо ошибка, сообщите нам об этом. Спасибо


Member 8459400

ДТ.Строк.Добавить(ДТ.Невров());
значение grid1.Источник данных = ДТ;
значение grid1.Привязку();
int totalcolums = grid1.Rows[0].Ячейки.Count; //я получаю здесь исключение arguementoutofrange
grid1.Rows[0].Ячейки.Четкий();
grid1.Rows[0].Ячейки.Добавить(новая табличная ячейка());
grid1.Rows[0].Ячейки[0].Columnspan значение = totalcolums;
grid1.Rows[0].Ячейки[0].Text = "Данные Не Найдены";


пожалуйста, помогите мне...я в беде или еще что-нибудь

dhanabalaan

Его работа отлично работает в первый раз загрузки, но после обратного colspan не работает.

Рейтинг:
1

Praveen2886

вы можете использовать emptydatatemplate для отображения какой-то вещи, когда gridview пуст

попробовать это
========
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.emptydatatemplate.aspx


Рейтинг:
1

chetan virkar

попробовать это

<asp:gridview id="gvwPlanDetail" autogeneratecolumns="false" runat="server" width="100%" xmlns:asp="#unknown">
                        OnRowDataBound="gvwPlanDetail_RowDataBound">
                        <emptydatarowstyle />
                        <emptydatatemplate>
                            <td>
                                Created Date
                            </td>
                            <td>
                                Modified Date
                            </td>
                            <td>
                                App Status
                            </td>
                        </emptydatatemplate>
                        <columns>


                            <asp:templatefield headertext=" Created Date">
                                <itemtemplate>
                                    <asp:label id="lblCreatedDate" runat="server" text="<%#DataBinder.Eval(Container.DataItem,"CreatedDate") %>"></asp:label>
                                </itemtemplate>
                            </asp:templatefield>
                            <asp:templatefield headertext="Modified Date">
                                <itemtemplate>
                                    <asp:label id="lblModifiedDate" runat="server" text="<%#DataBinder.Eval(Container.DataItem,"ModifiedDate") %>"></asp:label>
                                </itemtemplate>
                            </asp:templatefield>
                            <asp:templatefield headertext="APP Status">
                                <itemtemplate>
                                    <asp:label id="lblStatus" visible="true" runat="server" text="<%#DataBinder.Eval(Container.DataItem,"AppStatus")%>">
                                    </asp:label>
                                     <asp:imagebutton id="ibtnCancel" runat="server" imageurl="~/images/Cancel_New.gif">
                                      ToolTip="Cancel Scheme" CssClass="groovybutton"
                                                    Visible="false" OnCommand="ibtnCancel_Command" OnClientClick="return confirm('Are you sure you want to Cancel Plan?')"/>
                                  </asp:imagebutton></itemtemplate>
                            </asp:templatefield>
                        </columns>
                    </asp:gridview>