Есть ли элемент управления WPF, который я могу использовать, чтобы развернуть / свернуть панели (анимированные) - PullRequest
15 голосов
/ 28 января 2009

У меня есть окно с большим количеством контента. Я хотел бы иметь возможность отделить контент с помощью панелей и иметь разделитель, по которому пользователь может щелкнуть переключатель между каждой панелью (с анимацией, которая перемещает разделитель слева направо, показывая один раздел и скрывая другой) , Подумайте о Microsoft Office (2007) панель навигации . Есть ли простой способ сделать это?

Спасибо!

Ответы [ 3 ]

13 голосов
/ 13 декабря 2009

Мне также нужно это для моего приложения WPF, и лучшее, что я нашел, - это полнофункциональный элемент управления Accordion в наборе инструментов Silverlight:

альтернативный текст http://www.sitechno.com/Blog/ct.ashx?id=a7c3c2d9-9446-4236-bc6e-c436427002ff&url=http%3a%2f%2fwww.sitechno.com%2fBlog%2fcontent%2fbinary%2fWindowsLiveWriter%2fAccordionpart1_102BB%2fimage_2.png

Исходный код доступен здесь , а демоверсия здесь . Это, вероятно, легко портировать на WPF. В блоге 5 частей Руурда Боке подробно обсуждается это. В часть 4 он обсуждает, как изменить стиль аккордеона, используя шаблоны, чтобы получить этот великолепный аккордеонный вид:

alt text
(источник: sitechno.com )

alt text
(источник: sitechno.com )

7 голосов
/ 28 января 2009

Я использую Expander.

<Expander Header="Items" IsExpanded="False">
    ...
</Expander>
6 голосов
/ 28 января 2009

Я думаю, что вы ищете элемент управления "Аккордеон", вот пост о том, как создать его из стека элементов управления Expander:

http://www.rooijakkers.net/Blog/post/2007/11/WPF-implementation-of-a-basic-Accordion-control.aspx

А для анимации взгляните на элемент управления «Выявить» из трюков Кевина в http://j832.com/bagotricks/

Я думаю, что в примере проекта есть даже анимированный шаблон элемента управления Expander, основанный на элементе управления Reveal.

...