Compartir a través de


Trabajar con XAML

El lenguaje de marcado de aplicaciones extensible, o XAML, es un lenguaje de marcado basado en XML desarrollado por Microsoft. XAML es el lenguaje que sustenta la presentación visual de una aplicación desarrollada en Microsoft Expression Blend, al igual que HTML es el lenguaje que sustenta la presentación visual de una página web. La creación de una aplicación en Expression Blend supone tener que escribir código XAML, ya sea de forma manual o visual, mediante la Vista de diseño de Expression Blend.

[!NOTA]

No es necesario comprender el código XAML para crear aplicaciones en Expression Blend si se trabaja en la Vista de diseño. Para obtener más información, vea "Editar XAML en la Vista de diseño de Expression Blend" en Editar XAML.

XAML como ecualizador entre aplicaciones de diseño

Puede exportar activos de material gráfico de Microsoft Expression Design como XAML y después importar el XAML en el proyecto de Expression Blend. Algunas otras aplicaciones de diseño tienen herramientas que pueden convertir los elementos gráficos en XAML. En Internet, puede buscar herramientas de conversión en sitios de confianza.

Para obtener más información acerca de la importación de XAML, vea Importar XAML exportado desde Expression Design.

También puede importar proyectos de Microsoft Silverlight que se crean mediante una plantilla de Silverlight para codificar un proyecto de vídeo en Microsoft Expression Encoder. Adicionalmente, puede modificar las plantillas de Silverlight que se suministran con Expression Encoder en Expression Blend.

Para obtener más información, vea Personalizar una plantilla de Expression Encoder para Silverlight.

XAML, Windows Presentation Foundation y Microsoft .NET Framework 3.5

XAML forma parte de Windows Presentation Foundation (WPF). WPF es la categoría de características de Microsoft .NET Framework 3.5 relacionadas con la presentación visual de aplicaciones basadas en Windows y de aplicaciones cliente basadas en exploradores web.

Las aplicaciones basadas en WPF se pueden ejecutar en Windows Vista o en versiones anteriores de Windows siempre que esté instalado Microsoft .NET Framework 3.5 (e Internet Explorer 7.0 en el caso de aplicaciones cliente basadas en exploradores web).

Para obtener más información acerca de los requisitos de las aplicaciones de WPF, vea Implementar y publicar aplicaciones de Expression Blend.

WPF usa XAML para crear interfaces de usuario (UI) de una excelente calidad visual en lenguaje de marcado en lugar de lenguaje de programación como, por ejemplo, C#. Puede crear documentos elaborados de UI totalmente en XAML con elementos tales como controles, texto, imágenes, formas, animación y mucho más. Como XAML es declarativo (al igual que HTML), se requerirá la adición de código si fuera necesario agregar lógica en tiempo de ejecución a la aplicación. Por ejemplo, si la aplicación sólo usa XAML, se pueden crear y animar elementos de la interfaz de usuario y configurarlos para que respondan de un modo limitado a los datos proporcionados por el usuario (mediante desencadenadores de eventos), pero la aplicación no podrá realizar cálculos ni responderlos, ni podrá crear espontáneamente nuevos elementos de UI sin la adición de código. El código de una aplicación XAML se almacena en un archivo distinto del documento XAML. El hecho de que el diseño de la interfaz de usuario esté separado del código subyacente permite a programadores y diseñadores trabajar juntos en el mismo proyecto sin interferir mutuamente en su trabajo.

Para obtener información acerca de cómo Expression Blend puede ayudarle a incorporar código a una aplicación XAML, vea Diseño visual comparado con la escritura de XAML y de código.

Para obtener más información acerca de XAML y WPF, vea Información general sobre XAML en MSDN o visite el Centro de Desarrollo de Windows.

¿Qué es WPF?

WPF se basa en código administrado, pero usa un lenguaje de marcado, el lenguaje de marcado de aplicaciones extensible (XAML), para que la generación de aplicaciones sea mucho más fácil para los diseñadores. Las aplicaciones basadas en XAML son compatibles actualmente con C# y Microsoft Visual Basic .NET. Si escribe una aplicación de WPF entera con código de procedimientos, puede usar cualquier lenguaje CLR (Common Language Runtime).

Para obtener más información acerca de WPF, vea la sección Windows Presentation Foundation en MSDN, o vea Aprendizaje y recursos de la comunidad.

XAML y Silverlight

En los proyectos de Silverlight, también se usa XAML para representar la presentación visual de la aplicación.

La relación entre los archivos de XAML y de código subyacente

El código XAML de cualquier documento de Expression Blend se almacena en un archivo .xaml. Si el documento XAML tiene código subyacente, este código se almacena en un archivo con el mismo nombre, pero con la extensión adicional .cs o .vb. Por ejemplo, si el documento XAML se llama Window1.xaml, el archivo de código subyacente se llamará Window1.xaml.cs si el lenguaje de programación del código es C#.

Para obtener información acerca de cómo crear documentos XAML con o sin archivos de código subyacente, vea Crear un proyecto nuevo.

Cuando se crea un proyecto, el analizador de WPF lee los archivos .xaml del proyecto y genera un informe de los errores que se hayan producido. Del mismo modo, cuando se abre un proyecto existente en Expression Blend, el analizador lee los archivos .xaml incluidos en la carpeta del proyecto e intenta analizar los elementos y mostrar los documentos en la mesa de trabajo en la Vista de diseño. En ambos casos, si el analizador detecta errores, la mesa de trabajo se deshabilita y Expression Blend muestra un mensaje de error con un vínculo para abrir la vista XAML, donde podrá resolver los errores. También se informa de los errores detectados por el analizador en la ficha Errores del panel Resultados.

Para obtener más información, vea los temas siguientes:

Para obtener información acerca de la sintaxis de controles individuales, vea Biblioteca de controles o busque elementos XAML en Biblioteca de clases (WFP), ambos en MSDN.