Фиксированный первый столбец таблицы при горизонтальном скроллинге широкой таблицы

Щелкаем на таблице и передвигаемся по ней вправо-влево для просмотра столбцов.

В данном примере мы устанавливаем в SELECT FrozenLeftCol = 1 и это приводит к тому, что фиксируется первый столбец. Для столбца устанавливается белый фон, его можно изменить на другой цвет в CSS. 

Данная настройка не распространяется на вид таблицы на мобильных устройствах.

ВАЖНО. Первый столбец в таблице должен быть ВИДИМЫЙ.

Данный режим нельзя использовать с некоторыми другими возможностями таблиц: 

  • подтаблицы
  • заморожденный заголовок таблицы вверху страницы (необходимо ставить disableFrozenHeader=1)
  • вывод колонки номера (если она будет - то именно эта колонка будет заморожена). 

GetItems таблицы: 

CREATE PROCEDURE [dbo].[crud_watch-frozenLeftCol_getItems]
	@filters CRUDFilterParameter READONLY,  
	@sort sql_variant,
	@direction nvarchar(8),
	@page int,
	@pageSize int,
	@username nvarchar(32)
AS
BEGIN
	declare   @ids TABLE (id int)
	
    DECLARE @id INT = 0
	WHILE (@id <= 10)
	BEGIN
    	insert into @ids (id) values (@id)
    	SET @id = @id + 1
	END
	
	-- SELECT 1
	select 
		'FirstCol - ' + cast(@id as nvarchar) [FirstCol],
		'SecondCol - ' + cast(@id as nvarchar) [secondCol],
		'ThirdCol - ' + cast(@id as nvarchar) [thirdCol],
        'Col4 - ' + cast(@id as nvarchar) [Column4],
        'Col5 - ' + cast(@id as nvarchar) [Column5],
        'Col6 - ' + cast(@id as nvarchar) [Column6],
        'Col7 - ' + cast(@id as nvarchar) [Column7],
        'Col8 - ' + cast(@id as nvarchar) [Column8],
        'Col9 - ' + cast(@id as nvarchar) [Column9],
        'Col10 - ' + cast(@id as nvarchar) [Column10],
        'Col11 - ' + cast(@id as nvarchar) [Column11],
        'Col12 - ' + cast(@id as nvarchar) [Column12],
        'Col13 - ' + cast(@id as nvarchar) [Column13],
        'Col14 - ' + cast(@id as nvarchar) [Column14],
        'Col15 - ' + cast(@id as nvarchar) [Column15]        
	from @ids 
	where id in (select id from @ids)
	order by  id
	OFFSET @PageSize * (@Page - 1) ROWS
	FETCH NEXT @PageSize ROWS ONLY;
	
	-- SELECT 2
	select count(*) from @ids	

	-- SELECT 3
    select 1 FrozenLeftCol, 'h3' headerTag, 1 hideTitleCount, 1 DisableFrozenHeader, '12px' FontSizeЫ	
END
Насколько полезна эта возможность?

Другие модули

Последние обновления

Платформа Falcon Space

Это снижение стоимости владения

за счет меньшего количества людей для поддержки

Это быстрое внесение изменений

по ходу эксплуатации программы

Это современный интерфейс

полная адаптация под мобильные устройства

Сайт использует Cookie. Правила конфиденциальности OK