2008-12-05 13 views
34

Estamos implementando una aplicación que necesita ventanas acoplables, similar a Visual Studio 2005/2008, pero con varios "sitios de acoplamiento", a diferencia de la única de VS. ¿Alguien tiene una recomendación sobre una buena biblioteca para esto, ya sea OSS o comercial? Soy consciente de que Infragistics tiene uno, así como DiveDoble's SandDock y WPF-Dock de DevComponents, así como también el producto ActiPro Docking & MDI. También hay uno en CodeProject. ¿Alguien ha usado alguna de estas bibliotecas? Fue la experiencia buena o mala? Si tiene experiencia con uno de ellos, ¿admite varios "sitios de acoplamiento"?Recomendaciones sobre una Biblioteca de acoplamiento de WPF

+5

Como nota al margen, si está interesado en cómo el equipo de VS implementó el acoplamiento y varios otros aspectos en Visual Studio 2010, hay un gran conjunto de publicaciones de blog en http://blogs.msdn.com/b/visualstudio/archive /2010/03/23/wpf-in-visual-studio-part-5-window-management.aspx – Pat

Respuesta

9

He estado usando la biblioteca ActiPro durante varios meses y me ha ido bien. Admite varios sitios de acoplamiento. El soporte es excelente y usted obtiene algunos otros controles (selector de fecha, etc.) que faltan en WPF. Para mí, por $ 150 es dinero bien gastado. Funcionó de la caja, sin problemas.

Solíamos usar los controles para controles de WinForm pero pensamos que Actipro tiene mejor soporte, así que cambiamos para WPF.

Sólo mis dos centavos.

+3

No puedo recomendar el Dock de ActiPro lo suficiente; es una excelente solución de acoplamiento (lo usamos con una aplicación Prism). Normalmente aborrezco los controles de terceros, pero este conjunto de controles parece que provienen de Microsoft. El objeto API es lógico, pero completo. También utilizamos la cinta ActiPro, y este también fue un gran control para usar. ¡Muy recomendable! –

+0

De acuerdo. Dado el precio, la calidad de los controles y el soporte no pueden ser mejor. También elegí la biblioteca de Actipro debido a la pequeña cantidad de bibliotecas en comparación con otros paquetes. –

+0

Seré la voz en contra de ActiPro, la serialización del dock no está completa, realmente es una lástima que no se puedan deserializar las barras de herramientas atracadas en los paneles de documentos. (Editar: lo siento, la respuesta del proyecto de ley no merece -1). –

7

No se olvide AvalonDock en Codeplex. Lo he visto mencionado en otros lugares.

Inicialmente iba a utilizar la biblioteca ActiPro (sobre todo porque ya estoy usando su cinta), pero podría darle una oportunidad a AvalonDock ya que es de código abierto.

¿Alguien tiene algún comentario/comentario sobre AvalonDock?

+0

Es absolutamente maravilloso en todos los aspectos, excepto para [esto] (http://stackoverflow.com/questions/17972491 /) problema. – MasterMastic

+1

O este problema: http://stackoverflow.com/questions/20036898/avalondock-now-loses-alt-key- adornos. –

4

SandDock está bien. Lo usamos para una fase POC de un proyecto. Encontré algunos errores bastante malos en su mecanismo de ahorro de diseño. Se generó XML, pero luego no pudo cargar este XML; arrojó una excepción! De hecho, leí todo el XML generado y tuve que escribir código para modificar el XML ligeramente después de cada vez que se generó. No parecía que fuera un diseño bien pensado; Esperaba encontrar los tipos de base comunes de WPF como

Infragistics es un poco mejor pero con errores. De hecho, si intenta ejecutarlo en una máquina que solo tiene .Net 3.0 y no .Net 3.5, no funciona correctamente. Tengo un problema de desarrollo pendiente con Infragistics y no sé si han progresado en una solución para esto. También he tenido un bloqueo varias veces cuando flotaba una ventana y la arrastraba (sospecho que esto tiene que ver con el problema de .Net 3.0/3.5 anterior). Encontré que diseñar este control es bastante poco intuitivo.

38

El de Codeproject es el AvalonDock - lo usamos desde hace más de medio año, pero aún estamos lejos del lanzamiento, así que tenemos la flexibilidad. Antes de terminar con AvalonDock probamos Infragistix, ActiPro, SandDock y pueden ser algunos más. Aunque AvalonDock no es 100% libre de errores (¿y qué es eso?) No hay ninguno importante, es muy estable, rápido y tiene toda la funcionalidad. Admite varios sitios de acoplamiento.

Es un proyecto de código abierto y está en desarrollo activo, por lo que los errores se encuentran y se solucionan. Buena experiencia hasta ahora.

+5

Una característica de AvalonDock (así como a todos los otros administradores de acoplamiento) no tiene - es propiedad de ItemsSource completamente funcional en contenedores. I.e. Me gustaría poder tener una colección observable en mi clase, que pueda vincular a la propiedad ItemsSource de DocumentPane o DockablePane y, siempre que tenga DataTemplates correctas, estas se mostrarán como pestañas/ventanas acoplables o de documentos. La propiedad ItemsSource está ahí, pero la usabilidad es muy limitada: solo puede contener objetos DocumentContent o DockableContent y no funciona cuando se usa ItemsSource. –

+5

¡Solo un par de semanas después de haber publicado el comentario anterior, la función se agregó a AvalonDoc! Ahora existe la propiedad DocumentsSource que se puede vincular a una colección de documentos. Y funciona como un encanto. –

+0

¿Ha hecho barras de herramientas acoplables utilizando AvalonDock? – Number8

3

Probé todas las bibliotecas enumeradas aquí y todas tienen problemas hasta cierto punto. Aunque son caros, recomendaría Telerik e Infragistics. Nevron merece una mención porque su biblioteca es la mejor que he visto, pero es para WinForms.

+0

I Definitivamente recomiendo Telerik también. Son muy rápidos para responder cuando tiene preguntas de soporte técnico. – Seth

+0

Yo también recomiendo Telerik vs Devexpress para los controles. Sus controles parecen mejor diseñados y extensibles. Con Devexpress al principio me encantaron las respuestas rápidas, pero nunca dejaron de necesitar preguntas debido a la naturaleza opaca de la caja negra de su código. Telerik me hizo sentir que estaba aprendiendo cómo funcionaban sus cosas y cómo ampliar las cosas y, finalmente, solo hacía preguntas sobre errores o funciones faltantes en lugar de tener que hacer preguntas constantemente sobre el uso. –

3

1 año después ... AvalonDock ahora es estable y robusto. También hay un "envoltorio AvalonDock" que simplifica el trabajo con él sin reducir sus posibilidades. Ver http://sofawpf.codeplex.com/

+3

el enlace de sofawpf se ha ido? –

Cuestiones relacionadas