Aarti Meswania Ответов: 3

Tablelayoutpanel с замороженными подряд, как элемента управления datagridview


Привет,
команда codeproject,

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

пожалуйста помочь.
спасибо и с уважением

3 Ответов

Рейтинг:
28

Dave Kreskowiak

Не поддерживаемый. TableLayoutPanel-это не собственный элемент управления. Это расширение, добавленное к другим элементам управления. У него нет собственной возможности рендеринга. Он мягко говорит другим элементам управления, как позиционировать и измерять себя.

Чтобы выполнить то, что вы хотите, вам нужно иметь два или более элементов управления компоновкой внутри друг друга.

Например, первый TLP будет иметь две строки, первая из которых будет вашей строкой заголовка, а вторая-вашей деталью.

Затем второй TLP войдет в первый ряд TLP верхнего уровня. Это, вероятно, будет иметь одну строку и кучу столбцов, содержащих ваши элементы управления заголовком.

Наконец, третий TLP будет находиться во второй строке TLP верхнего уровня и содержать столько строк и столбцов, сколько требуется для размещения ваших данных.


Aarti Meswania

Огромное спасибо! :)
вы правы, у меня тоже есть поиск в google.
Я должен спроектировать панель, как вид решения 2

Volynsky Alex

хороший ответ

Рейтинг:
18

Aarti Meswania

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

               TableLayoutPanel---cell(colId,RowId)

                  __________________________
                 |  |      cell(1,0)      <-+--colTblLayoutPnl
                 |__|_______________________|  (AutoScroll=False)
                 |  |                       |
       cell(0,1) |  |      cell(1,1)      <-+--DetailTblLayoutPnl
RowTblLayoutPnl--+> |                       |  (AutoScroll=True)
                 |  |                       |
                 |__|_______________________|

Счастливого Кодирования!
:)


Рейтинг:
1

Trường Nguyễn

TableLayoutPanel---cell(colId,RowId)

                  __________________________
                 |  |      cell(1,0)      <-+--colTblLayoutPnl
                 |__|_______________________|  (AutoScroll=False)
                 |  |                       |
       cell(0,1) |  |      cell(1,1)      <-+--DetailTblLayoutPnl
RowTblLayoutPnl--+> |                       |  (AutoScroll=True)
                 |  |                       |
                 |__|_______________________|




If we use three tblLayout, two of them is use to define Row header and Column header.
The problem is when we scroll in DetailTable how to make Row header tblLayout and Column header tblLayout scroll ? HScroll ( Row Header tblLayout frezze , column header tblLayout Hscroll ) , VScroll ( Row Header tblLayout Vscroll, column header tblLayout frezze ).