Запретить ListView из окна изменения размера при добавлении элементов WPF / C # - PullRequest
5 голосов
/ 27 июня 2010

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

Есть ли способ предотвратить такое поведение?

Ответы [ 5 ]

4 голосов
/ 06 августа 2011

Измените SizeToContent вашего окна на Manual или Width (там не должно быть высоты). Это предотвратит автоматическое изменение высоты самого окна в соответствии с содержимым.

1 голос
/ 24 августа 2011

Вы можете использовать следующий код.

Сначала получите значение загрузки списка.Затем сохраните его в переменной, затем выполните этот код в свойстве события ColumnWidthChanging, например:

     e.cancel = true;
     e.NewWidth = // the declared variable in which you store the list view with value in the onload function of the form

 int a = 100;
    e.cancel =true;
    e.NewWidth = a;
1 голос
/ 27 июня 2010

Вы хотите установить для свойства VerticalAlignment значение Stretch.При необходимости и в родительском элементе управления и т. Д. До тех пор, пока вы не окажетесь в элементе управления Window.

Предостережение заключается в том, что если один из элементов управления на пути вверх - StackPanel, он не будет растягиваться.чтобы соответствовать, но ВСЕГДА расширяется, чтобы приспособить его содержание.Так что держитесь подальше от StackPanels, используйте Stretch, и все готово!

Удалите также и ваши привязки, они, скорее всего, TwoWay: Таким образом, при увеличении размера представления списка ваше окно будет расти!

Надеюсь, это поможет!

0 голосов
/ 27 июня 2010

Вы можете установить свойство MaxHeight для вашего ListView в вашем xaml, нет?

0 голосов
/ 27 июня 2010

Вы пытались установить свойство MaxWidth?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...