Рекомендации по док-станции WPF
Мы внедряем приложение, которое требует подключаемых окон, похожее на Visual Studio 2005/2008, но с несколькими «стыковочными сайтами», в отличие от единственного VS. У кого-нибудь есть рекомендация по хорошей библиотеке для этого – либо OSS, либо коммерческая? Я знаю, что у Infragistics есть один, а также SandDock от Divelement и WPF-Dock от DevComponents, а также продукт Docking & MDI от ActiPro. В CodeProject также есть один. Кто-нибудь использовал любую из этих библиотек? Был ли опыт хорошим или плохим? Если у вас есть опыт работы с одним из них, поддерживает ли он несколько «стыковочных сайтов»?
- Вызывающий stream должен быть STA, потому что многие компоненты пользовательского интерфейса требуют этого в WPF
- Создание приложений WPF выглядит в стиле Metro, даже в Windows 7? (Окон Хром / Темы / Тема)
- Каков наилучший способ передать событие в ViewModel?
- Есть ли хороший способ конвертировать между BitmapSource и Bitmap?
- Связывание видимости для DataGridColumn в WPF
- WPF C #: переупорядочить элементы в списке с помощью перетаскивания
- Как сделать окно WPF подвижным, перетащив расширенный оконный кадр?
- Диспетчер WPF {«вызывающий stream не может получить доступ к этому объекту, потому что ему принадлежит другой stream».}
Я использую библиотеку ActiPro в течение нескольких месяцев, и это со мной хорошо. Он поддерживает несколько стыковочных сайтов. Поддержка отличная, и вы получаете некоторые другие элементы управления (сборщик дат и т. Д.), Которые отсутствуют в WPF. Для меня за 150 долларов это хорошо потраченные деньги. Он работал из коробки, без суеты.
Раньше мы использовали элементы управления Divelements для WinForm, но мы думаем, что Actipro имеет лучшую поддержку, поэтому мы переключились на WPF.
Только мои два цента.
Один из Codeproject – AvalonDock – мы используем его уже более полугода, но мы далеки от выпуска, но у нас есть гибкость. Прежде чем попасть в AvalonDock, мы попробовали Infragistix, ActiPro, SandDock и могут быть некоторые другие. Даже несмотря на то, что AvalonDock не является 100% -ной ошибкой (ну, что это?), Нет крупных, он очень стабилен, быстр и обладает всеми функциональными возможностями. Он поддерживает несколько стыковочных сайтов.
Его проект с открытым исходным кодом и находится в активной разработке, поэтому ошибки найдены и исправлены. Хороший опыт.
Не забудьте AvalonDock на GitHub (часть WPF Toolkit). Я видел, как это упоминалось в других местах.
Первоначально я собирался использовать библиотеку ActiPro (в основном потому, что я уже использую их ленту), но я мог бы дать AvalonDock шанс, так как он является открытым исходным кодом.
У кого-нибудь есть отзывы / комментарии на AvalonDock?
Я использую DotNetBar, потому что у него есть лента / док и больше элементов управления, и это недорого. Здорово.
SandDock в порядке. Мы использовали его для этапа POC проекта. Я обнаружил некоторые довольно плохие ошибки в их механизмах экономии макета. Он сгенерировал XML, но затем не смог загрузить этот XML обратно; он бросил исключение! Я действительно прочитал весь сгенерированный XML и должен был написать код, чтобы немного модифицировать XML после каждого его создания. Похоже, что это был продуманный дизайн; Я надеялся на общие базовые типы WPF, например
Инфраструктура немного лучше, но глючит. На самом деле, если вы попытаетесь запустить его на машине, на которой есть только .Net 3.0 и нет .Net 3.5, она работает неправильно. Имейте выдающуюся проблему с проблемами с Infragistics, и я не знаю, достигли ли они прогресса в исправлении. Я также несколько раз рушился, когда плавал окно и перетаскивал его (подозреваю, что это связано с проблемой .Net 3.0 / 3.5 выше). Я нашел, что этот элемент управления довольно не интуитивно понятен.
Я попробовал все библиотеки, перечисленные здесь, и они в какой-то степени ошибочны. Хотя они дороги, я бы рекомендовал Telerik и Infragistics. Nevron заслуживает упоминания, потому что их библиотека – лучшее, что я видел, но это для WinForms.
1 год спустя … AvalonDock теперь стабильный и надежный. Существует также «обертка AvalonDock», которая упрощает работу с ней, не уменьшая ее возможности. См. http://sofawpf.codeplex.com/
Вот еще один:
http://www.essentialobjects.com/Products/EOWpf/DockView.aspx
У этого есть ряд встроенных скинов, которые можно переключаться динамически. Он также имеет множество отдельных элементов управления (например, «Splitter»), которые вы можете использовать самостоятельно.