Как реализовать съемное управление в XAML & WPF - PullRequest
3 голосов
/ 05 октября 2011

Я хочу, чтобы в моем программном обеспечении были отсоединяемые элементы управления, чтобы пользователь мог перетаскивать представление (элемент управления) в отдельное окно.Как и в случае с TabItems в Visual Studio 2010.

В это время конкретные представления создаются при каждом щелчке по пункту меню и при запросе нового типа данных.Представления отображаются в HeaderedContenControl, который имеет ContentPresenter в качестве дочернего элемента.Моя цель - сделать так, чтобы можно было щелкнуть заголовок этого элемента управления и перетащить его в отдельное окно.Кроме того, отдельное окно не должно быть изменено нажатием на новый пункт меню, вместо этого новый вид должен быть снова создан в главном окне.TabControl с его TabItems, кажется, является лучшим элементом управления для реализации этого поведения, но стандартный TabItem - довольно простая вещь без таких возможностей.

Я искал в сети решение, но пока ничего не нашел.Я надеюсь, что смогу найти помощь на этом сайте.

Ответы [ 2 ]

4 голосов
/ 05 октября 2011

Эта функция обычно является частью различных стыковочных решений. Я лично рекомендую AvalonDock - он может делать именно то, что вы описываете, и является бесплатным (и с открытым исходным кодом).

Если вы хотите написать такую ​​функцию самостоятельно, вам лучше подготовиться к написанию значительного количества кода;)

0 голосов
/ 05 октября 2011

Другим вариантом будет Управление инфраструктурой .

Мы использовали его в довольно большом проекте и остались довольны.

Хотя они не бесплатны.

...