powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / HOT TIP #3 Отображение DataGrid’a в маленькой области экрана без использования разбиения на страницы
1 сообщений из 1, страница 1 из 1
HOT TIP #3 Отображение DataGrid’a в маленькой области экрана без использования разбиения на страницы
    #32349230
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HOT TIP №3

Отображение DataGrid’a в маленькой области экрана без использования разбиения на страницы.

ЯЗЫК: C#
ВЕРСИИ ASP.NET: 1.0 | 1.1
АВТОР: Bipin Joshi, http://www.dotnetbips.com/
ПЕРЕВОД: hDrummer

Вступление

Разбиение на страницы – одна из наиболее часто используемых свойств элемента управления DataGrid. У этого свойства есть следующие преимущества:

•Отображение небольшого количества данных из большого набора
•Экономия места в окне браузера, благодаря разбивке на страницы

Однако разбиение на страницы вынуждает нас выполнять postback каждый раз при каждой смене страницы. Представьте, что вам нужно отобразить набор данных в 100 записей. На самом деле это не такой уж и большой объём для таких приложений, которые мы разрабатываем. Поэтому необходимость в использовании разбиения на страницы сомнительна. Однако отображение на одной странице 100 записей одновременно будет означать неэкономное отношение к оконному пространству. Итак – с одной стороны разбиение на страницы вроде бы не нужно, а с другой 100 отображаемых записей отбирают слишком много места. Как выйти из этой ситуации? Читаем дальше…

Создание веб-формы с DataGrid

Сначала создадим веб-форму с DataGrid’ом, привязанным к таблице БД. Назовём эту форму WebForm1. Выглядит это так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<%@ Page Language= "C#" %>
<HTML>
<HEAD>
	<title>WebForm1</title>
</HEAD>
<body>
	<form id= "Form1"  method= "post"  runat= "server" >
		<asp:DataGrid id= "DataGrid1"  runat= "server" >
		</asp:DataGrid>
	</form>
</body>
</HTML>


В обработчике события Page_Load привяжем DataGrid как обычно:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
string connstr = 
 "Integrated Security=SSPI;Initial Catalog=Northwind;
Data Source=SERVER\NetSDK" ;
SqlConnection con  =  new SqlConnection(connstr);
SqlDataAdapter da = new SqlDataAdapter( "select * from employees" , con);
DataSet ds = new DataSet();
da.Fill(ds,  "employees" );
DataGrid1.DataSource = ds;
DataGrid1.DataMember = “employees”;
DataGrid1.DataBind();


Создание веб-формы, содержащей этот DataGrid

Теперь создадим главную форму, в которой и будут отображаться данные (назовём её DataGridHost.aspx). Используем тэг IFRAME языка HTML, который будет ссылаться на WebForm1, которую мы разработали предварительно. Код:


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
<%@ Page Language= "c#" %>
<html>
	<head>
		<title>DataGridHost</title>
	</head>
	<body;>
	<iframe src= "webform1.aspx" >
	</iframe>
	</body>
</html>


Эта веб-форма может содержать и другие элементы управления, так же, как и обычная веб-форма. Как только эта форма будет выведена в окне браузера, DataGrid из WebForm1 также будет показана в рамках тэга IFRAME. Заметьте, что тэг IFRAME является специфичным для Internet Explorer, кроме того, он ещё имеет некоторые дополнительные атрибуты, например width и height, которые могут помочь вам управлять шириной и высотой окна отображения соответственно.

Вот собственно и всё.
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / HOT TIP #3 Отображение DataGrid’a в маленькой области экрана без использования разбиения на страницы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]