powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как выровнять высоту строк в datagrid'ах
9 сообщений из 9, страница 1 из 1
Как выровнять высоту строк в datagrid'ах
    #32747648
Дмитрий Валуев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На форме имеются 2 datagrid, расположенные так, что их top совпадает. В дизайн тайме гриды имеют одинаковую высоту строк, а в рантайме у одного из них высота строк увеличивается примерно в 2 раза. Как сделать их одинаковыми?
...
Рейтинг: 0 / 0
Как выровнять высоту строк в datagrid'ах
    #32749093
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
лучше забыть про это.
можно, конечно попробывать засунуть в ячеку <div>, задать ему overflow и height... полный изврат
можно в ячейки добавить <nobr>... уйдет за правую границу...
...
Рейтинг: 0 / 0
Как выровнять высоту строк в datagrid'ах
    #32749494
Фотография Radjaman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опишем в форме константу
Код: plaintext
1.
private const int DGHEIGHT =  50 ;  // например
у датагридов привяжем события ItemDataBound
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
private void dataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
    DataGridItem gridItem = e.Item;
// установим насильственно высоту
    gridItem.Height=DGHEIGHT;
}

private void dataGrid2_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
    DataGridItem gridItem = e.Item;
// установим насильственно высоту	
    gridItem.Height=DGHEIGHT;
}

-------------------------------------------
ЛОЛ Гыгы
...
Рейтинг: 0 / 0
Как выровнять высоту строк в datagrid'ах
    #32749500
Фотография Radjaman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя этот способ работает только в сторону увеличения размера.

-------------------------------------------
ЛОЛ Гыгы
...
Рейтинг: 0 / 0
Как выровнять высоту строк в datagrid'ах
    #32749646
Дмитрий Валуев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
переписал на VB.NET
Код: plaintext
Private DGHEIGHT As Integer =  50 
и
Код: plaintext
1.
2.
3.
    Private Sub grdLinkedDocs_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles grdLinkedDocs.ItemDataBound
        Dim gridItem As DataGridItem = e.Item
        gridItem.Height = DGHEIGHT
    End Sub
в ответ получаю
Value of type 'Integer' cannot be converted to 'System.Web.UI.WebControls.Unit'.
?
...
Рейтинг: 0 / 0
Как выровнять высоту строк в datagrid'ах
    #32749842
Фотография Radjaman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет особого желания разбираться в VB.net
но вместо
Код: plaintext
  private const int DGHEIGHT =  50 ;  // например

работает код
Код: plaintext
Private DGHEIGHT As New Unit( 50 , UnitType.Pixel)
если есть желание поразбирайтесь с преобразованием типа unit в числовые и наооборот

-------------------------------------------
ЛОЛ Гыгы
...
Рейтинг: 0 / 0
Как выровнять высоту строк в datagrid'ах
    #32749891
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Будьте проще:
<ItemStyle Height="50"></ItemStyle>

только это все равно не поможет " ... этот способ работает только в сторону увеличения размера. " (с) Radjaman

Попробуй потом уменьшить размер браузера по ширине - и все поедет

что бы это предотвратить я уже предлагал способ 1. ( http://www.sql.ru/forum/actualpost.aspx?bid=19&tid=131983&mid=0&p=1#1052753)

имхо - переверстай страницу
...
Рейтинг: 0 / 0
Как выровнять высоту строк в datagrid'ах
    #32749894
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сорри, кривую ссылку дал
/topic/131983#1052753
...
Рейтинг: 0 / 0
Как выровнять высоту строк в datagrid'ах
    #32750564
Дмитрий Валуев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Воспользовался способом, подсказанным уважаемым Radjaman. Ограничился строкой заголовков. Вот на чем остановился.
В секции деклараций
Код: plaintext
Private DGHEIGHT As New Unit( 30 , UnitType.Pixel)
и на Init'е гридов
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub grdLinkedDocs_Init(ByVal sender As Object, ByVal e As 
System.EventArgs) Handles grdLinkedDocs.Init
        grdLinkedDocs.HeaderStyle.Height = DGHEIGHT
End Sub

Private Sub grdVersions_Init(ByVal sender As Object, ByVal e As 
System.EventArgs) Handles grdVersions.Init
        grdVersions.HeaderStyle.Height = DGHEIGHT
End Sub
Теперь в рантайме броузер держит высоту заголовков фиксированной, а остальные строки раздвигает как ему нравится.
Действительно, этот способ работает только в сторону увеличения, в том смысле, что высота строки заголовков не уменьшается меньше, чем задано в дизайнтайме, даже если задать
Код: plaintext
Private DGHEIGHT As New Unit( 0 , UnitType.Pixel)
Но если задать больше чем в дизайнтайме, броузер это отобразит.

profil
Попробуй потом уменьшить размер браузера по ширине - и все поедет

Пробовал, вроде ничего не поехало...
?
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как выровнять высоту строк в datagrid'ах
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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