Compartir a través de


SimpleScrollBar (soporte WPF en Blend)

Esta página es específica de proyectos WPF

La barra de desplazamiento es un control simple que muestra un marcador de una barra en una posición que depende de la propiedad Value. Puede establecer la orientación de la barra de desplazamiento en Blend para Visual Studio con la propiedad Orientation de Diseño en el panel Propiedades. Puede establecer los valores Minimum, Maximum y el valor Value actual de la barra de desplazamiento en Propiedades comunes, en el panel Propiedades. El valor actual debe estar entre los valores máximo y mínimo.

Vista de la mesa de trabajo de un control SimpleScrollBar

JJ171014.db3af5e5-8b09-42e7-b541-543b3b2bbcb3(es-es,VS.120).png

Desglosar la plantilla de control

La plantilla del control SimpleScrollBar está formada por los siguientes elementos:

  • Un panel Grid denominado GridRoot, que se usa para que la barra de desplazamiento contenga los diversos objetos secundarios. El panel Grid también se usa porque facilita la incorporación de más objetos a la plantilla. Este panel Grid está dividido en tres filas, donde las filas superior e inferior tienen tamaños máximos establecidos para que no se expandan más allá de 18 píxeles (unidades independientes del dispositivo que miden aproximadamente 1/96 pulgadas) y el tamaño de la fila del centro está establecido en variación proporcional (*), lo que significa que se expandirá cuando se expanda la ventana.

  • Dos objetos RepeatButton denominados DecreaseRepeat y IncreaseRepeat, que se usan para mover el marcador de posición en la barra. Los objetos RepeatButton tienen contenido que muestra flechas. De nuevo, se usa un panel Grid como raíz para cada uno de ellos de forma que el usuario pueda editar fácilmente los objetos Path (denominados DecreaseArrow e IncreaseArrow) y agregar otro contenido.

  • Un objeto Track denominado PART_Track, que se usa para mostrar un objeto Thumb a lo largo de una barra. Las partes expuestas de la barra se doblan como RepeatButtons denominados PageDown y PageUp. Ambos usan la plantilla SimpleScrollRepeatButtonStyle, que puede modificarse de forma independiente. Las secciones IncreaseRepeatButton y DecreaseRepeatButton del elemento Track usan enlaces de Command para poder llamar a comandos en la clase de barra de desplazamiento. El objeto Thumb usa la plantilla SimpleThumbStyle, que puede modificarse de forma independiente.

  • Una transformación de diseño, que se usa para mostrar la barra de desplazamiento con una orientación horizontal. Este diseño facilita la edición del estilo, ya que no es necesario acordarse de editar dos plantillas distintas. No obstante, existen casos en que las dos orientaciones deben ser muy distintas y requieren, por tanto, plantillas independientes. En este caso, puede usar un elemento Setter en el elemento Style de la Vista XAML de Blend para cambiar las plantillas en función de la orientación. Puede ver un ejemplo de ello en la plantilla predeterminada del control del sistema ScrollBar.

    Advertencia

    No cambie el nombre de ningún objeto cuyo nombre empiece por "PART_", porque el código que implementa el control hace referencia a estos objetos.

Desencadenadores de propiedad usados

Los desencadenadores de propiedad de la plantilla de control sirven para hacer que el control reaccione ante los cambios de propiedad. Puede hacer clic en el elemento en el panel Desencadenadores para ver las propiedades que cambian cuando se activa un desencadenador. Por ejemplo, en la plantilla SimpleScrollBar, cuando la propiedad Orientation es Horizontal, se cambian varias propiedades para reflejar la nueva orientación de la barra de progreso.

Pinceles usados

La plantilla SimpleScrollBar solo usa un recurso de pincel del sistema para la propiedad Foreground. Se hace referencia a otros recursos de pincel en las plantillas que SimpleScrollBar utiliza, como las plantillas SimpleRepeatButton, SimpleThumbStyle y SimpleScrollRepeatButtonStyle. Para cambiar la apariencia de SimpleScrollBar, puede modificar los pinceles que usan estas plantillas o crear plantillas nuevas.

Procedimientos recomendados e instrucciones de diseño

  • En general, debe usar un control Grid como raíz de la plantilla si espera que el diseñador agregue más elementos visuales al control. Blend busca un panel de diseño como el control Grid y lo activa de forma predeterminada para que los objetos nuevos de la mesa de trabajo se agreguen como objetos secundarios del panel de diseño.

  • Puede aplicar la plantilla SimpleScrollBar para la barra de desplazamiento que se usa en la plantilla de ScrollViewer.

  • Puesto que la plantilla SimpleScrollBar usa otras plantillas, puede ser tedioso desplazarse por los diversos niveles de plantillas para llegar a la que desea modificar. Para modificar las plantillas directamente, puede hacer clic en el botón Editar recurso situado al lado del nombre de la plantilla en el panel Recursos. A continuación, en el modo de edición del estilo, haga clic con el botón secundario en Estilo en el panel Objetos y escala de tiempo, elija Editar plantilla y, a continuación, haga clic en Editar actual. Como alternativa, puede ser más sencillo simplemente eliminar las referencias a las subplantillas (restablezca la propiedad Style en Varios en el panel Propiedades) y diseñar todo en una plantilla.

  • Para que el control funcione, es necesario mantener los enlaces de comandos que activan los comandos en la clase del control y proporcionar otra forma de realizar un contrato entre el control y la clase a la que representa. Estos enlaces están presentes en las propiedades Command de los objetos IncreaseRepeat, DecreaseRepeat, PageUp y PageDown y en el desencadenador Orientation=Horizontal.

  • Si lo desea, puede agregar desencadenadores a la plantilla SimpleScrollBar o modificar los objetos del objeto PART_Track para que la apariencia de la barra sea más interesante. Si lo hace, no cambie el nombre del objeto PART_Track ni de ninguno de los objetos secundarios porque el código que implementa el control hace referencia a estos objetos. El objeto PART_Track puede encontrar sus elementos porque están colocados bajo encabezados de control específicos: Track.IncreaseRepeatButton, Track.DecreaseRepeatButton y Track.Thumb. Thumb también es un control específico de Windows Presentation Foundation (WPF) que se puede arrastrar.

Vea también

Tareas

Inténtelo: Personalizar la apariencia de un control SimpleScrollBar