Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 331

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 325 326 327 328 329 330 < 331 > 332 333 334 335 336 337 .. 404 >> Следующая


Вывод подробной информации

Теперь можно выводить заголовок, но как быть с остальной информацией? В данном разделе мы рассмотрим, каким образом можно выводить подробную информацию и дату.

Прантикум: вывод остальной части вхождения шеЬ-регистратора

1. Способ, с помощью которого мы выводили дату вхождения

web-регистратора, был очень сложным. Поскольку управляющий элемент DataList предназначен специально для работы с общими свойствами, мы создадим такое свойство объекта Entry, которое будет возвращать дату в виде строки. Откройте редактор кода для Entry и введите следующий код:

public String TimeetampAsString (

get

(

return Timestai»p.ToString(*dddd') + * +

Timestamp.ToLongDateString();

}

)
Приложения ASP.NET________________________________________________________________________707

2. Откройте Designer для Default.азрх.

Управляющий элемент DataList может перейти в такое состояние, в котором его нельзя редактировать. Это выгл5щит так, как показано на рисунке справа.

3. Щелкните правой кнопкой мышн на управляющем элементе н снова выберите пункт меню Edit Template | Item Template. Установите курсор после зеленого управляющего элемента Label, нажмите клавишу Shift и, не отпуская ее, нажмите клавишу Return, В результате вместо символа возврата каретки будет добаален символ новой строки, что приведет к появлению очень большого пустого пространства между заголовком и самим вхождением.

4. Добавьте еще один управляющий элемент Label под уже существующим элементом Label зеленого цвета. После этого добавьте пробел, затем тире, еще один пробел, а затем еще один — последний — элемент Label, как показано на рисунке слева.

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

5. Выберите первый новый управляющий элемент Label. Присвойте его свойству CasStyle Значение entryDate.

6. Выберите СВОЙСТВО DataBir.dinya. ЩелКНИТе МЫШЬЮ иа многоточии и откройте окно DataBindings.

Убедитесь, что в списке, расположенном слева, выбрано свойство Text, и щелкните мышью на переключателе Custom binding expression.

Добавьте следующий код:

. Eval (Container, ' Dataltem. TimeetajnpAsStriny')

7. Щелкните мышью на ОК, для того чтобы сохранить привязку.

8. Выберите второй из двух новых управляющих элементов Label. Присвойте его свойству cssStyle значение entry.

9. Найдите и выберите свойство DataBindinys. Щелкните мышью на многоточии и откройте окно DataBindings. Убедитесь, что в списке, расположенном с левой стороны, выбрано свойство Text, и щелкните мышью на переключателе Custom binding expression. Добавьте следующий код:

DataBinder.Eval{Contaiпег, *Dataltem.Details')

Disraeli’s Weblog 3

| DdtobuumJ

DdtdtiUUIld
DtiCabmmfl
^copyright)
fserverpath)

708 Глава 24

Откомпилируйте и запустите проект. Вы увидите приблизительно то, что изображено на рисунке слева.

Как это работает

Поскольку при работе с управляющим элементом DataList проще всего использовать свойства, мы создали свойство, доступное в режиме “только чтение”, С именем TimestampAaString, Которое должно возвращать отформатированную версию свойства Timestamp, Мы не включили в это свойство предложения set, поскольку это предполагало бы, что тот, кто использует данный объект, может попросить нас преобразовать это Значение ИЗ СтрОКИ В System. DateTime. И хотя в этом также пег ничего недостижимого, такая задача выходит за рамки работы, которую мы собираемся возложить на данный объект,

public String TimestampAsString { -get (

return Timestamp.ToString(*dddd') + ', ' +

Timestamp.ToLongDateString0;

}

)

После добавления этого свойства включение дополнительных элементов Label в шаблон свелось к простому повторению действий, выполненных ранее

Важное замечание об управляющем элементе DataList и общих членах

Выражение, введенное в поле Custom binding expression элемента DataList, будет работать только со свойствами. Оно не сможет работать с общими членами. Если у вас есть такой код:

public claaa Entry С

// члены...

Public String Title;

и вы попытаетесь выполнить привязку Title с помощью выражения:

DataBinder.Eval{Container, 'Dataltem.Title')

то будет выдано сообщение об ошибке, которое гласит, что такого свойства отыскать не удалось. В данном случае вы располагаете единственной возможностью — преобразовать член в свойство, например, так:

public String Title {

get

(

return _title;

>

set .

(

_title = value; ,

)

)
Приложения ASP.NET

709

Создание новых вхождений web-регистратора

На данный момент имеются все функциональные возможности, необходимые для извлечения и вывода списка вхождений, которые могут появиться на нашем сайте. Мы однако пока не умеем создавать новые вхождения без Notepad! В идеале желательно иметь на сайте форму, которую можно было бы использовать для создания новых вхождений.

Прантинум: создание вхождений web-регистратора

1. Войдите в Solution Explorer, щелкните правой кнопкой мыши на проекте Weblog и выберите пункт меню Add | Add Web Form. Введите имя — Edit.aspx.
Предыдущая << 1 .. 325 326 327 328 329 330 < 331 > 332 333 334 335 336 337 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.