Подтвердить что ты не робот

Настройка DataGridView Высота строки в коде и отключение ручного изменения размера

В моей сетке у меня была строка кода, которая отключила изменение размера ручного пользователя:

dgvTruckAvail.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;

Теперь мне нужно было установить высоту столбца в коде, и это не сработало (см. Высота строки установки DataGridView не работает)

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

  • Строки размера в коде

и

  1. Запретить сами размеры пользовательских строк.

Любые указатели?

4b9b3361

Ответ 1

Set:

dgvTruckAvail.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
dgvTruckAvail.AllowUserToResizeRows = false;

Это отключит автоматическую сортировку строк и изменение размера строки вручную. Чтобы установить высоту строки, вы можете использовать свойства Height и MinimumHeight для RowTemplate.

Ответ 2

Установка размера строки является реальной проблемой. Проверьте, сколько жалоб и ответов есть в Интернете. Я обнаружил, что иногда работает один способ, а в других случаях он больше не работает.

Сделайте это: Поместите DataGridView в свою форму. Отредактируйте и добавьте несколько столбцов. Неважно, что это такое, потому что вы выбросите этот DGV через мгновение. Перейдите в эти свойства DataGridView и отредактируйте RowTemplate/Height на что-то маленькое или большое (только чтобы вы могли видеть его работу). Добавьте строку кода в свой метод, чтобы установить XXX.RowCount на что-то вроде 12, чтобы заполнить этот тест DataGridView. Запустите код, чтобы проверить высоту строки.

Откройте код XXX.Designer.cs. Разверните "созданный конструктор Windows Form Designer" и найдите код, который относится к тому, что вы только что сделали с DataGridView. Скопируйте все это в метод, в котором вы пытаетесь настроить/установить высоту строки. Прокомментируйте весь свой код. Строка за строкой, измените самогенерируемый код, чтобы использовать имя вашего объекта. Повторите тест для любого сбоя и изолируйте его в это время.

Теперь вернитесь назад и удалите этот объект DataGridView.

Ответ 3

В окне свойств:

AllowUserToResizeRows = False

Ответ 4

Это работает для меня: 1. Откройте .Designer.cs (формы, содержащей вид сетки) 2. Вернитесь к дизайну сетки и отредактируйте любое свойство, которое вы хотите 3. На обеих вкладках будет отображаться * после изменения 4. Готово

У меня в гостях измененный статус не касается файла .Designer.cs, поэтому наша модификация в конструкторе не применяется.