Программирование >>  Asp.net 

1 ... 8 9 10 [ 11 ] 12 13



Рис. 37.12. Добавление элемента управления GridView

Теперь щелкните на ссылке Refresh Schema (Обновить схему), и список мероприятий будет отображен под формой. Попробуем теперь просмотреть Web-сайт снова и увидим их, как показано на рис. 37.13.

Ш Name

1 My Birthday

2 Dinner

Discussion of

darkness Д Christmas with

Pals

5 Escape

g Planetary

Conquest у Homecoming

Celebration g DalekE-eunion

Romantic meal for two

Room AttendeeList

IffiyPop (5), Sean Conneiy (7), Albert Einstein (10), 4 George Clootiey (14), Jules Veme (18), Robin Hood (20), and Karh Watson

1 M Gates (1), Monika Lewinsky (2), and Brace Lee

6 Vlad the bipaler (4), Myra Hindley (13), and Beelzebub

Dr Frank N Purter (11), Bobby Davro (15), John F Kennedy (16), Stephen King (19), and Karli Watson

Monika Lewinsky (2), Stephen Kmg (19), and Spartacus

Bill Gates (1). Albert Einstein (10), Dr Frank N Furter (11), Bobby Davro (15), and Darth Vader William Shakespeare (6), Christopher Coltmibus (12), Robin Hood (20). and jnysscs

Roger Moore (8), George Clooney (14), Bobby Davro (15), andDavros

George Clooney (14), and Donna Watson

EventDate

Э/17/2008 12 00:00 AM

8/5/2008 12 00:00 AM 10/29/2008 12:00:00 AM 12/25/2008 12:00:00 AM 5/10/2008 12:00:00 AM 6/15/2008 12,00:00 AM 6/22/2008 12 00:00 AM 6/12/2008 12:00:00 AM 3/2Э/2008 12,00:00 AM

Рис. 37.13. Отображение списка мероприятий

Чтобы обеспечить автоматическое обновление этого списка при добавлении новой записи, внесем следующее изменение в код submitButton Click(): if (queryResult == 1)

resultLabel.Text = Event Added. ; EventData = null;

calendar.SelectedDate = GetFreeDate(calendar.SelectedDate.AddDays(1)); GridView1.DataBind();

Все привязываемые к данным элементы управления поддерживают этот метод, обычно вызываемый при вызове метода DataBind() верхнего уровня (this).

Один момент, на который вы, вероятно, обратили внимание на рис. 37.13 - это то, что отображение даты/времени поля EventDate выглядит не особенно изящно. Поскольку мы просматриваем только даты, составляющая времени всегда будет



00:00:00, что совершенно излишне. В следующих разделах будет показано, как отобразить эту информацию в более дружественной к пользователю манере в контексте элемента управления ListView. Как можно было ожидать, элемент управления DataGrid содержит множество свойств, которые можно применить для форматирования отображаемых данных, но мы оставляем это вам для самостоятельных исследований.

Отображение данных по шаблонам

Многие из элементов управления, служащих для отображения данных, позволяют применять форматирующие шаблоны. Шаблоны в том смысле, как они понимаются ASP.NET - это параметризованные разделы HTML, используемые в качестве элементов вывода в определенных элементах управления. Они позволяют точно настроить вывод данных в браузере с тем, чтобы добиться профессионального вида приложений, не затрачивая на это много усилий.

Несколько шаблонов доступны для настройки различных аспектов поведения списков, но один из них важен для элементов управления Repeater, DataList и ListView - это <ItemTemplate>, который применяется для отображения каждого элемента данных. Этот шаблон (как и все прочие) объявляется внутри объявления элемента управления. Например:

<asp:DataList runat= server ... > <ItemTemplate>

</ItemTemplate> </asp:DataList>

Внутри объявления шаблона обычно выводятся фрагменты HTML-кода вместе с параметрами данных, привязанных к элементу управления. Для вывода таких параметров можно использовать специальный синтаксис:

<%# выражение %>

Здесь вместо выражение может быть подставлено выражение, связывающее параметр со свойством страницы или элемента управления, но более вероятно, что оно будет состоять из выражений Eval() или Bind() . Эти функции могут применяться для вывода данных таблицы, привязанной к элементу управления простой спецификацией столбца. Для Eval() применяется следующий синтаксис:

<%# Eval( ColumnName ) %>

Есть также необязательный второй параметр, позволяющий форматировать возвращенные данные, который имеет синтаксис, идентичный выражениям форматирования строк, применяемых повсюду. Например, это может быть использовано для форматирования строк данных в более читабельном виде - как раз то, чего не доставало предыдущему примеру.

Выражение Bind() аналогично, но позволяет вставлять данные в атрибуты серверных элементов управления. Например:

<asp:Label runat= server ID= ColumnDisplay Text=<%# Bind( ColumnName ) %> />

Обратите внимание, что поскольку в параметрах Bind() используются двойные кавычки, для ограничения значения атрибута применяются одинарные.

В табл. 37.8 представлен список доступных шаблонов вместе с пояснениями касательно их использования.



Таблица 37.8. Доступные шаблоны

Шаблон

Применяется к

<ItemTemplate> <HeaderTemplate>

<FooterTemplate>

<LayoutTemplate>

<SeparatorTemplate> <ItemSeparatorTemplate> <AlternatingItemTemplate>

<SelectedItemTemplate>

<EditItemTemplate>

<InsertItemTemplate> <EmptyDataTemplate>

<PagerTemplate>

<GroupTemplate>

<GroupSeparatorTemplate> <EmptyItemTemplate>

Описание

DataList, Repeater, ListView

DataList, DetailsView, FormView, Repeater

DataList, DetailsView, FormView, Repeater

ListView

DataList, Repeater ListView

DataList, ListView

DataList, ListView

DataList, FormView, ListView

FormView, ListView

GridView, DetailsView, FormView, ListView

GridView,

DetailsView,

FormView

ListView

ListView ListView

Используется для элементов списков.

Используется для вывода перед элементами.

Используется для вывода после элементов.

Используется для вывода окружающих элементов.

Используется между элементами списка.

Используется между элементами в списке.

Используется для замены элементов; может помогать видимости.

Используется для выбранных элементов списка.

Используется для редактируемых элементов.

Используется для вставляемых элементов.

Используется для отображения пустых элементов, например, когда никакие записи недоступны в GridView.

Используется для форматирования нумерации страниц.

Используется для определения выходных окружающих групп элементов.

Используется между группами элементов.

Если используются группы элементов, то этот шаблон применяется для предоставления выходных данных для пустых элементов в группе. Этот шаблон применяется, если в группе нет достаточного количества элементов для заполнения группы.

Проще всего понять, как их использовать, с помощью примера. Использование шаблонов

Мы расширим таблицу в верхней части страницы Default.aspx приложения PCSWebApp3 так, чтобы включить ListView, отображающий все мероприятия, хранящиеся в базе данных. Сделаем их выбираемыми, чтобы подробности о каждом мероприятии отображались в элементе управления FormView в результате щелчка на его названии.



1 ... 8 9 10 [ 11 ] 12 13

© 2006 - 2024 pmbk.ru. Генерация страницы: 0.002
При копировании материалов приветствуются ссылки.
Яндекс.Метрика