|
https://technet.microsoft.com/en-us/library/ms143221(v=sql.105).aspx |
Элементы-потребители данных ASP .NET 2.0
Так же просто добавляется возможность разбивки на страницы:
AllowPaging="True" PageSize="5"
Если не указано значение PageSize, он по умолчанию считается равным 10.
Пейджер можно настроить разнообразными способами через настройку PagerSettings, например:
<PagerSettings FirstPageText="Первая" Mode="NextPreviousFirstLast" LastPageText="Последняя" NextPageText="->" />
Вместо текста элементами пейджера могут служить картинки:
<PagerSettings Mode="NextPreviousFirstLast"
FirstPageImageUrl="~/RW_btn.gif"
LastPageImageUrl="~/FF_btn.gif"
NextPageImageUrl="~/fwd_btn.gif"
PreviousPageImageUrl="~/RW_btn.gif" />Поле Comments в таблице может быть пустым, то есть его значение допускает Null. Можно задать текст, который отображается для таких значений:
<asp:BoundField DataField="Comments" HeaderText="Comments" SortExpression="Comments" NullDisplayText="N/A"/>
Введен также шаблон на случай, когда в источнике данных нет ни одной записи:
<asp:GridView ID="GridView1" runat="server"> <EmptyDataTemplate> No records </EmptyDataTemplate> </asp:GridView>
Удаление и редактирование записей делается добавлением в контейнер < Columns > столбца
<asp:CommandField ShowEditButton="True" ShowDeleteButton="True" />
В столбце появляются гиперссылки " Delete ", " Edit ".
Свойство ButtonType может принимать значение Image, в таком случае нужно задать путь к картинке или кнопке:
<asp:CommandField ButtonType="Image" DeleteImageUrl="~/button- delete.gif" ShowDeleteButton="True" /> <asp:CommandField ButtonType="Button" ShowDeleteButton="True" />
До сих пор все данные отображались в виде простого текста. GridView позволяет настраивать столбцы, чтобы в них появлялись различные элементы управления. Например, если в источнике данных есть булевское поле, то GridView будет показывать Checkbox.
Типы колонок те же, что и в DataGrid, и к ним прибавилось 2 новых типа:
CheckBoxField — в каждой строке выводится флажок CheckBox.
ImageField позволяет выводить картинку, если в поле хранится путь к ней.
HyperLinkField — аналог HyperLinkColumn в DataGrid. Его можно использовать для передачи параметров QueryStringParameter, чтобы в результате выводить отфильтрованную информацию. На странице CustomersByCountry находится источник данных, знакомый по "Работа с базами данных (продолжение). Элементы-источники данных (Data Source Controls)" .
<asp:SqlDataSource ID="SqlDataSource4" runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString
%>"
SelectCommand="SELECT * FROM [Customers] where @Country
is null or Country = @Country"
ProviderName="<%$
ConnectionStrings:NorthwindConnectionString.ProviderName %>"
CancelSelectOnNullParameter="False">
<SelectParameters>
<asp:QueryStringParameter Name="Country"
QueryStringField="Country" />
</SelectParameters>
</asp:SqlDataSource>К нему привязан GridView с полем типа HyperLinkField:
<asp:GridView ID="GridView1" runat="server"
DataSourceID="SqlDataSource4"
OnRowUpdating="GridView1_RowUpdating"
OnRowDataBound="GridView1_RowDataBound"
OnRowUpdated="GridView1_RowUpdated"
AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="CompanyName"
HeaderText="CompanyName" SortExpression="CompanyName" />
<asp:BoundField DataField="ContactName"
HeaderText="ContactName" SortExpression="ContactName" />
<asp:BoundField DataField="ContactTitle"
HeaderText="ContactTitle" SortExpression="ContactTitle" />
<asp:BoundField DataField="Address" HeaderText="Address"
SortExpression="Address" />
<asp:BoundField DataField="City" HeaderText="City"
SortExpression="City" />
<asp:HyperLinkField HeaderText="Country"
DataNavigateUrlFields="Country"
DataNavigateUrlFormatString="~/CustomersByCountry.aspx?coun-
try={0}"
DataTextField="Country" />
</Columns>
</asp:GridView>
<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl="~/CustomersByCountry.aspx">View all</asp:HyperLink>