En un UserControl de WPF, tengo que hacer una llamada a un servicio web. Estoy haciendo esta llamada en un hilo separado, pero quiero informar al usuario que la llamada puede tomar algo de tiempo.Cómo mostrar una barra de progreso en la parte superior de un control en WPF
El WebMethod me devuelve una colección de objetos y lo enlace a un ListBox en mi UC. Hasta ahora, muy bien ... Esta parte funciona realmente bien. Sin embargo, Quiero mostrar una barra de progreso (o una animación de cualquier tipo ...) durante la llamada. Esta animación estaría en la parte superior y centrada en el control ListBox.
Probé con Adorner y funciona parcialmente. Sin embargo, tengo que dibujar todos los controles en override anulado vacío OnRender (DrawingContext drawingContext) ... Simplemente quiero agregar un control por un par de segundos ...
¿Alguien tiene una idea de cómo podría lograr esto?
Gracias!
¡Guau! ¡Gran respuesta! Sin embargo, con su solución, ¿cómo centro el control ProgressBar en el centro de ListBox? ¿Lona? – Martin
Hmm: podría hacer que el panel de progreso sea un elemento secundario de ListBox y establecer el resto de elementos dentro de la visibilidad del cuadro de lista para colapsarse, y cuando no necesite el panel de progreso, establezca que su visibilidad se colapsó. –
O podría hacer que el ListBox sea hijo de un contenedor diferente, como una cuadrícula, y hacer que el panel de progreso sea un hermano del ListBox; luego, puede establecer la alineación horizontal y vertical del panel de progreso en "Centro", y estará centrado cuando se haga visible. –