LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
WPF Windows Presentation Foundation.By Henry
1.
2. • Windows Presentation Foundation (WPF) es
una tecnología de Microsoft, presentada como parte
de Windows Vista. Permite el desarrollo de interfaces de
interacción en Windows tomando características
de aplicaciones Windows y de aplicaciones web.
• WPF ofrece una amplia infraestructura y potencia gráfica
con la que es posible desarrollar aplicaciones
visualmente atractivas, con facilidades de interacción
que incluyen animación, vídeo, audio, documentos,
navegación o gráficos 3D. Separa, con el lenguaje
declarativo XAML y los lenguajes de
programación de .NET, la interfaz de interacción de la
lógica del negocio, propiciando una arquitectura Modelo
Vista Controlador para el desarrollo de las aplicaciones.
5. • Cuando el programador crea una interfaz gráfica se
concentra en los elementos desde el punto de vista
lógico y en cómo se comunican entre sí y con los datos
de la aplicación.
• Los ficheros generados son directamente accesibles con
Microsoft Expression Blend. Allí, el diseñador encuentra
una aplicación con la que es sencillo cambiar el aspecto
visual de los elementos, aplicar efectos y diseñar
animaciones. Blend es parte de la suite Microsoft
Expression, que incluye más herramientas orientadas a
diseñadores gráficos (como Microsoft Expression
Design, una herramienta en la línea de Adobe
Freehand).
• Cada elemento WPF contiene decenas de atributos.
Podemos recurrir a un formulario para asignar valores
distintos de los “por defecto”, pero lo cierto es que a la
larga resulta conveniente usar el editor de XAML.
6. • Hay más elementos de maquetación y se
pueden incorporar otros definidos por
programadores. Los paneles que vienen
de serie son:
• Grid: Distribución de elementos en una
tabla, con la posibilidad de fundir filas y
columnas.
• StackPanel: distribución de elementos en
sucesión vertical u horizontal.
• DockPanel: distribución de elementos
con anclaje a punto cardinal y posible
expansión del último al área sobrante.
7. Elementos de Maquetación:
• WrapPanel: distribución de elementos en
sucesión vertical u horizontal en “líneas”
(como el texto, que fluye de una línea a la
siguiente).
• UniformGrid: distribución de elementos
en una matriz cuadrada.
• Canvas: ubicación precisa de elementos.
8. Contenido rico, diseño gráfico y
animaciones
• WPF sigue un modelo de contenido rico. En muchos
sistemas de construcción de aplicaciones con interfaz
gráfica de usuario hay serias limitaciones al contenido
de los elementos.
• En algunas, los botones sólo pueden contener, por
ejemplo, texto y, opcionalmente, un icono. Escapar de
esta restricción, cuando es posible, obliga a construir
nuevos elementos, lo que supone un incremento de
complejidad enorme.
• WPF, sin embargo, permite que muchos componentes
contengan a otros componentes en su interior, lo que
facilita el diseño de aplicaciones con un acabado gráfico
espectacular (si se trabaja codo con codo con
diseñadores gráficos, claro está).
9. Plantillas
• En WPF, puede definir el aspecto de un elemento
directamente, a través de sus propiedades, o
indirectamente a una plantilla o el estilo.
• En su forma más simple un estilo es una combinación
de valores de propiedades que se pueden aplicar a un
elemento de interfaz de usuario con un atributo de la
propiedad individual.
• Las plantillas son un mecanismo alternativo para la
definición de interfaz de usuario para partes de la
aplicación de WPF. Hay varios tipos de plantillas
disponibles en WPF.
10. Plantillas
• Detrás de todos los controles de interfaz de
usuario de WPF es un modelo de nueva
composición. Todos los mandos se compone de
una o más "visuales".
• Estos sub-elementos visuales se convierten en
un árbol jerárquico de Visual por WPF y
eventualmente prestados por la CPU.
• Dado que los controles de WPF no son
contenedores para controles estándar de
Windows de su interfaz de usuario puede ser
radicalmente modificada sin afectar el
comportamiento normal del control.
11. Plantillas
• Todos los mandos de WPF tiene por defecto una
plantilla que define su árbol visual.
• La plantilla predeterminada es creado por el autor de
control y es sustituible por otros desarrolladores y
diseñadores.
• El sustituto de interfaz de usuario se coloca dentro de
una ControlTemplate.
• WPF tiene un sistema de enlace de datos flexible.
elementos de la interfaz se pueden rellenar y
sincronizada con los datos de un modelo de datos
subyacente.
• En lugar de mostrar un texto sencillo de los datos
enlazados WPF puede solicitar una plantilla de datos
antes de representar al árbol visual.
12. Propiedades de dependencia
• WPF ofrece una herramienta muy interesante para crear
propiedades que notifican automáticamente de los cambios que
experimentan: las propiedades de dependencia. De hecho, las
propiedades de los elementos WPF son realmente propiedades de
dependencia.
• Estas propiedades no sólo notifican de los cambios que
experimentan: tienen valores por defecto, se pueden heredar sus
valores en la jerarquía de objetos, se pueden ligar a otras
propiedades de dependencia, pueden usarse en animaciones y, lo
que quizá es más importante: no consumen memoria si no se les
asigna un valor.
• Las propiedades de dependencia se almacenan en un diccionario
cuando se les asigna un valor. Si no lo tienen, WPF se encarga de
acceder al valor por defecto automáticamente.
• Se trata de un factor muy importante si tenemos en cuenta que un
elemento WPF puede tener más de medio centenar de
propiedades.
13. Animaciones
• WPF admite animaciones basadas en el tiempo, en
contraste con el enfoque basado en frames. Esto
desacopla la velocidad de la animación de cómo el
sistema está funcionando.
• WPF admite animación de bajo nivel a través de
temporizadores y más alto nivel de abstracción a través
de animaciones las clases de animación.
– Cualquier propiedad elemento de WPF pueden ser animados,
siempre y cuando se registra como una propiedad de
dependencia.
– Clases de animación se basan en el. NET tipo de bienes a ser
animados. Por ejemplo, cambiando el color de un elemento se
hace con la clase ColorAnimation y animar el ancho de un
elemento (que se escribe como un doble) se hace con la clase
DoubleAnimation.
14. Animaciones
• Las animaciones se pueden agrupar en los guiones
gráficos.
– Guiones gráficos son la forma principal para iniciar, detener,
pausar y manipular las animaciones.
• Las animaciones pueden ser desencadenadas por
sucesos externos, incluyendo la intervención del usuario.
• El redibujado de una escena se produce por el disparo
de un temporizador (en inglés "timer").
• Presentación temporizadores se inicializan y gestionado
por WPF.
• Los efectos de animación se pueden definir en función
de cada objeto, que se puede acceder directamente
desde marcado XAML.
15. Imagénes
• WPF puede tener acceso de forma
nativa Windows Imaging
Component (WIC) y el código API permite
a los desarrolladores a escribir codecs de
imágenes para sus formatos específicos
de la imagen de archivo.