У меня есть это:
lvPalette.Columns.Add("Code", -2, HorizontalAlignment.Center);
lvPalette.Columns.Add("Attendu", -2, HorizontalAlignment.Center);
lvPalette.Columns.Add("Chargé", -2, HorizontalAlignment.Center);
lvPalette.Columns.Add("Validé", -2, HorizontalAlignment.Center);
lvPalette.Columns.Add("Description", -2, HorizontalAlignment.Center);
Которые заканчивают тем, что делали первый столбец столь же большим как само управление вместо этого, чтобы быть столь же большими как текст заголовка. Почему это?
Я пытался установить первый столбец widt на 100, но затем это - 2-й столбец, которые занимают все место до ширины элемента управления.
Править: Я думаю, что изобразил, почему это делает это. Кажется, что установка width к-2 вынуждает заголовок занять целое место ширины элемента управления avaible. Таким образом, когда первый столбец добавляется, это - единственное существующее, таким образом, это занимает целое место управления, затем другие добавляются и устанавливаются исправить размер.
Таким образом, вопрос был бы, как я могу предотвратить его, чтобы сделать это?
Похоже, нет никакого способа предотвратить такое поведение, кроме значений параметров.
Я нашел способ авторизации через заголовок и поля, а затем выбрал тот, у которого была наибольшая ширина, но у него есть плохая сторона, заключающаяся в том, что он принудительно изменяет размер в 3 раза, что не очень хорошо с графической точки зрения.
Попробуйте вызвать метод AutoResize для каждого столбца после того, как вы добавили столбцы в список.
Кажется, я понял, почему это происходит. Похоже, что установка ширины на -2 заставляет заголовок занимать все доступное пространство по ширине элемента управления. Поэтому когда добавляется первый столбец, он единственный существующий, поэтому он занимает все пространство контрола, затем добавляются остальные и устанавливаются правильные размеры.
Так что вопрос в том, как я могу предотвратить это?
.