Применение элемента управления DataGrid
Применение элемента управления DataGrid
В первых версиях набора инструментальных средств разработчика .NET Framework SDK для демонстрации примеров итерирования коллекции данных применялся пользовательский элемент управления DataGrid, который имеет очень мало или не имеет вообще ничего общего с элементом управления ActiveX. По сути, он означает использование в Web-форме некоторых шаблонных функций, которые выполняются в серверной части в целях создания HTML-кода для клиентской части. Эта технология обладает очень большими возможностями, поскольку позволяет создавать весьма сложную логику, связанную с пользовательским интерфейсом, в виде повторно используемого компилированного объекта, который полностью безопасен и совместим с любым типом Web-броузера. Дело в том, что серверные элементы управления в итоге создают HTML-код и вопросы совместимости полностью зависят от разработчика.
Элемент DataGrid является характерным примером элемента управления, который позволяет разработчику просто связать объект DataSet с объектом DataGrid и мгновенно получить визуальное представление данных. В листинге 11.3 показан пример создания базового запроса для заполнения данными элемента управления DataGrid. Для использования любого серверного элемента управления его нужно объявить, а после объявления его методы и свойства можно использовать так же, как любые другие объекты Web-страницы. Итак, здесь создается новая Web-форма WebGrid.aspx, которая содержит элемент управления DataGrid.
ЛИСТИНГ 11.3. Web-форма WebGrid.aspx
<%@ Import Namespace = "System.Data" %>
<%@ Import Namespace = "System.Data.SqlClient" %>
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebGrid.aspx.vb" Inherits="Novelty.WebGrid"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>WebGrid</title>
<%@
Dim connString As String
connString = "server=(local);database=Novelty;TRUSTED_CONNECTION=Yes"
Dim conn As New SqlConnection(connString)
Dim As New SqlCommand("SELECT * FROM tblCustomer", conn)
conn.Open()
Dim dReader As SqlDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection)
dataGrid1.DataSource = dReader
dataGrid1.DataBind
dReader.Close()
conn.Close()
%>
<meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0">
<meta name="CODE_LANGUAGE" content="Visual Basic 7.0">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemes.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:DataGrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 179px; POSITION: absolute; TOP: 73px" runat="server" Width="640px" Height="480px" BackColor="#fffff5" BorderColor="black" ShowFooter="true" CellPadding="1" CellSpacing="1" Font-Name="Arial" Font-Size="8pt" HeaderStyle-BackColor="#c0c0c0" EnableViewState="false">
</asp:DataGrid>
</form>
</body>
</HTML>
После выполнения этого кода по отношению к базе данных Novelty полученные результаты будут иметь такой вид, как на рис. 11.12.
РИС. 11.12. Внешний вид Web-формы WebGrid.aspx
Серверный элемент управления предлагает способ отображения данных без создания вручную какого-либо кода, связанного с механизмом отображения данных. Учтите, что серверные элементы управления в большинстве своем созданы на основе фрагментов Web-страниц, или пэйджлетов (рagelet). Они не являются полноценными ASPX-страницами, имеют расширение .as и представляют только некоторые разделы Web-страницы, например повторно используемую форму или код, который применяется для отображения сообщения об ошибке и является частью более общей Web-страницы с информацией о происходящих ошибках. Такие серверные элементы управления позволяют выполнять практически любые функции с помощью Web-ориентированного пользовательского интерфейса.
НА ЗАМЕТКУ
В cреде с динамическим содержимым некоторые переменные, например строка подключения к базе данных, часто остаются статическими. В листинге 11.1 для строки подключения в куче ищется (interned) экземпляр строки connString. Если он найден, то проверяется его содержимое. Если значение экземпляра в куче совпадает со значением строки connString, то оно используется приложением. В противном случае создается новый экземпляр и ему присваивается значение строки connString. Данный подход позволяет экономить ресурсы, потому что среда CLR гораздо быстрее выполняет проверку кучи, чем создание нового экземпляра объекта-строки. Такое повторное использование строк позволяет повысить производительность приложения.
Данный способ не следует применять для строк, значение которых часто изменяется, потому что нет никакого смысла проверять значение экземпляра, когда наверняка известно, что оно другое. Несмотря на это, его можно применять для свойств, если свойства содержат особый набор значений, например при работе с перечислением. Для повышения производительности приложения и эффективного использования ресурсов в таких случаях применяется метод intern. В главе 12, "Web-службы и технологии промежуточного уровня", описываются другие технологии повышения эффективности приложений.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Атрибуты элемента OBJECT
Атрибуты элемента OBJECT Этот элемент позволяет встроить на сайт любой мультимедиа-объект вместе с программой обработки данного объекта. В этом разделе мы рассмотрим вопросы встраивания музыки, видео и Flash-анимации. Однако возможности элемента OBJECT намного шире: в принципе,
Структура элемента списка
Структура элемента списка Раньше в ядре было несколько реализаций связанных списков. Тем не менее в таких случаях необходима единая реализация с целью убрать разный код, который выполняет одинаковые действия. Во время разработки серии ядер 2.1 была предложена единая
Выбор потомков элемента
Выбор потомков элемента В предыдущем разделе при помощи выражения "PLANET/NAME" я выбирал все элементы <NAME>, являющиеся прямыми потомками элементов <PLANET>, а при помощи выражения "PLANET/*/NAME" — все элементы <NAME>, являющиеся внуками элементов <PLANET>. Есть, однако, более
Использование стандартных свойств элемента управления
Использование стандартных свойств элемента управления Многие элементы управления обладают стандартными свойствами, к которым относится свойство Value.В случае текстового поля вы не должны явно указывать, какое свойство используется - Value или Text - для настройки и
Регистрация элемента управления
Регистрация элемента управления Чтобы зарегистрировать новый элемент управления, выясните имя файла, содержащего элемент управления, и место, где размещается этот файл на диске. После этого выполните следующее.1. Выберите Tools=References, чтобы открыть диалоговое окно со
Помещение элемента управления в панель Toolbox
Помещение элемента управления в панель Toolbox Зарегистрировав новый элемент управления, активизируйте его, поместив элемент управления в панель элементов управления (Toolbox). Вот как это сделать.1. Активизируйте любое окно UserForm в редакторе Visual Basic, чтобы на экране появилась
Удаление элемента из указателя
Удаление элемента из указателя Для удаления элемента из указателя нужно удалить весь текст, помещенный в фигурные скобки. Чтобы текст указателя был виден, нужно включить режим отображения непечатаемых символов при помощи кнопки Отобразить все знаки в группе Абзац
Трансформации элемента
Трансформации элемента Как правило, вставляемый при помощи копирования элемент получается гораздо больше или, наоборот, меньше ожидаемого размера; иногда его надо как-то повернуть, растянуть или вытянуть. В таких случаях мы применяем специальные операции трансформации.
4.10. Отображение элемента управления, предназначенного для обновления информации в табличных видах
4.10. Отображение элемента управления, предназначенного для обновления информации в табличных видах Постановка задачи Требуется отображать в пользовательском интерфейсе красивый элемент управления для обновления информации. Этот элемент управления должен находиться
Выбор элемента
Выбор элемента Синтаксис:<выражение>.<идентификатор><выражение> -> <идентификатор>Выражение выбора элемента позволяет получить доступ к элементу структуры или объединения. Выражение имеет значение и тип выбранного элемента.В первой синтаксической форме
6.13.2. Поиск элемента
6.13.2. Поиск элемента Две операции, позволяющие отыскать в наборе определенное значение, – это find() и count(). find() возвращает итератор, указывающий на найденный элемент, или значение, равное end(), если он отсутствует. count() возвращает 1 при наличии элемента и 0 в противном случае.
Элемент управления DataGrid
Элемент управления DataGrid Элемент управления DataGrid позволяет отображать данные в виде таблицы, как это сделано в электронной таблице MS Excel. Как и многие другие элементы управления, он имеет обрезанные возможности по сравнению с полной версией .NET Framework. Например, отключена
3.2.3. Добавление элемента
3.2.3. Добавление элемента Наиболее простой способ добавить элемент в список — это вставить его в самое начало так, чтобы он стал его новой головой. Если X — это новый элемент, а список, в который X добавляется — L, тогда результирующий список — это просто[X | L]Таким
3.2.4. Удаление элемента
3.2.4. Удаление элемента Удаление элемента X из списка L можно запрограммировать в виде отношенияудалить( X, L, L1)где L1 совпадает со списком L, у которого удален элемент X. Отношение удалить можно определить аналогично отношению принадлежности. Имеем снова два случая:(1) Если X
Понятие опорного элемента
Понятие опорного элемента В отличие от других проблем, решение которых предложено в этой лекции, такое тиражирование кода не связано с тем, что система типов препятствует нам в выполнении задуманного. Повторное объявление ковариантных типов разрешает их