2009-02-17 12 views
6

Soy relativamente nuevo en el mundo de WPF y una cosa que noté inmediatamente es lo lento que se dibuja el contenido de la ventana al cambiar el tamaño de una ventana. Por ejemplo, si tiene barras de desplazamiento en los bordes de la ventana, esas barras de desplazamiento se ocultarán parcialmente al contraerse y tendrán espacio entre ellas y el borde de la ventana cuando se agranden.¿Cómo puedo hacer que cambiar el tamaño de las ventanas WPF sea menos "lento"?

Esto sucede incluso con un proyecto WPF vacío creado en Visual Studio. Lo que es aún peor es que también ocurre con el fondo y puede ver cosas detrás de la ventana (otras ventanas, fondos de escritorio, etc.) que se filtran al ampliarse.

Al principio pensé que era una fea limitación de WPF ver que las aplicaciones nativas o de WinForms cambian el tamaño muy bien (si se escribe correctamente). Pero cuando miro a Expression Blend, el fondo de la ventana permanece opaco (aunque el contenido de la ventana todavía está rezagado). ¿Qué hacen para evitar el problema descrito y hay alguna forma de mejorar el cambio de tamaño a GUI más aproximadas nativas/WinForm?

Respuesta

1

¿Está ejecutando Vista sin SP1? De lo que he leído, esto era un problema común que se supone que se han fijado ..

http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/3960d6a6-e873-455c-9ddc-1e2dd32e090b/

+0

Sí, lo creo. Y como he dicho, Expression Blend no parece tener ese problema. ¿Tiene alguna sugerencia adicional sobre ese "problema común" del que habló? – gix

+0

Lo siento, confundido, había leído que esto se solucionó entre Vista y Vista SP1. – markt

+0

¿Qué tal .Net 3.5 SP1? Hubo mucho o trabajo hecho con el rendimiento de WPF en 3.5 Sp1. – Russ

0

que no estoy viendo este comportamiento, a mí mismo. Desarrollo en vista x64 sp1 y/o una pc virtual ejecutando xp x32 sp3. Wpf usa DirectX, ¿podría ser su tarjeta de video/máquina? Intente ejecutar su aplicación en una máquina diff y vea si tiene los mismos resultados.

+0

Estoy ejecutando Vista64 SP1 yo mismo, Aero habilitado. Al usar el tema vista-basic (aero-desactivado), parece que no lo entiendo (o apenas se nota). En Server 2008 R2 en VBox y en Server 2008 en mi computadora portátil, ambos con el tema básico, no los veo en absoluto. Tal vez porque mi máquina es mucho más rápida que esas. – gix

0

Tengo el mismo problema con el retraso de la interfaz al redimensionar. Sospecho que el motivo del retraso es el redimensionamiento de los búferes de cuadros subyacentes en X directa, que nunca es particularmente rápido. Aunque no estoy seguro de lo que puedes hacer al respecto.

0

He estado buscando información sobre este tema también. Simplemente pensé que era una "característica" de Windows que un intrépido programador de Microsoft pensó que sería genial. Esperaba poder apagarlo para que el tamaño de la ventana siguiera realmente a mi mouse, en vez de rezagarse y luego rebasar. Grr.

Cuestiones relacionadas