WPF Grid / WrapPanel AutoSize Animation - PullRequest
       12

WPF Grid / WrapPanel AutoSize Animation

3 голосов
/ 17 февраля 2010

У меня есть следующий макет в WPF

<grid>
<row height=auto>
<border>
<listbox>
<border?
</row>
<row height=*>
<othercontent>
</row>
</grid>

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

То, что я хотел бы, - это иметь возможность анимировать растущий и уменьшающийся список (или границу, содержащую его, или строку сетки, которая имеет авто-высоту). Какой элемент я должен использовать - триггер на SizeChanged на границе?

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

Любая помощь высоко ценится. Спасибо, Chris

1 Ответ

0 голосов
/ 23 января 2013

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

Не уверен, как это можно сделать. Но пользовательская панель обтекания. При изменении размера проверьте, есть ли место для элемента в ряду. Если это так, выполните рассказы, которые оживят позицию предмета.

Также взгляните на визуальный менеджер состояний. При использовании разметки вы сможете анимировать то, что не оживляет. Как перемещение элемента из столбца сетки в другой.

Не уверен, поможет ли это.

...