Share via


Atributos en tiempo de diseño

En algunas ocasiones, al compilar aplicaciones WPF o de Silverlight mediante WPF Designer for Visual Studio, es necesario proporcionar información para que la Vista de diseño tenga un comportamiento correcto. Puede especificar esta clase de información utilizando atributos en tiempo de diseño. Por ejemplo, los atributos en tiempo de diseño permiten ajustar el tamaño de la ventana raíz con valores específicos para albergar el diseño, a la vez que se mantiene el tamaño orientado al contenido en tiempo de ejecución. Los atributos en tiempo de diseño se omiten durante la compilación y no tienen ningún efecto en tiempo de ejecución.

Atributos en tiempo de diseño

WPF Designer proporciona los siguientes atributos en tiempo de diseño.

Atributo en tiempo de diseño

Descripción

Ejemplo de uso

d:DesignHeight

Especifica el alto del elemento raíz en tiempo de diseño, independientemente del alto en tiempo de ejecución. Se agrega automáticamente al hacer clic en la etiqueta de tamaño de raíz (etiqueta de tamaño de elemento raíz).

<Window x:Class="DesignDataDemo.MainWindow"
        xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="clr-namespace:DesignDataDemo"
        Title="MainWindow" mc:Ignorable="d" xmlns:d="https://schemas.microsoft.com/expression/blend/2008" xmlns:mc="https://schemas.openxmlformats.org/markup-compatibility/2006" d:DesignHeight="350" d:DesignWidth="525" SizeToContent="WidthAndHeight">

d:DesignWidth

Especifica el ancho del elemento raíz en tiempo de diseño, independientemente del ancho en tiempo de ejecución. Se agrega automáticamente al hacer clic en la etiqueta de tamaño de raíz (etiqueta de tamaño de elemento raíz).

<Window x:Class="DesignDataDemo.MainWindow"
        xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="clr-namespace:DesignDataDemo"
        Title="MainWindow" mc:Ignorable="d" xmlns:d="https://schemas.microsoft.com/expression/blend/2008" xmlns:mc="https://schemas.openxmlformats.org/markup-compatibility/2006" d:DesignHeight="350" d:DesignWidth="525" SizeToContent="WidthAndHeight">

d:DataContext

Especifica un contexto de datos en tiempo de diseño para un control y sus elementos secundarios. Un modelo común consiste en declarar enlaces de control en la vista XAML y establecer la propiedad DataContext que se usa para rellenar los enlaces en tiempo de ejecución. Si usa este modelo, puede establecer d:DataContext para que el diseñador reconozca la forma de los tipos. Esto le permite usar el generador de enlace de datos para crear enlaces en la Vista de diseño. Para obtener más información, vea Tutorial: Crear un enlace de datos mediante WPF Designer.

<Grid d:DataContext="{d:DesignInstance Type=local:Customer}" Name="_grid">

d:DesignInstance

Se usa como parte de una declaración d:DataContext o d:DesignSource. Especifica el tipo que se puede usar como origen de datos para enlazarlo a los controles en el diseñador. No es necesario que el tipo se pueda crear en XAML. Para obtener más información, vea Tutorial: Usar DesignInstance para enlazar datos en el diseñador.

<Grid d:DataContext="{d:DesignInstance Type=local:Customer}" Name="_grid">

d:DesignData

Se usa como parte de una declaración d:DataContext o d:DesignSource. Especifica un archivo XAML que contiene datos de ejemplo que se usan en tiempo de diseño. Use las acciones de compilación DesignData o DesignDataWithDesignTimeCreatableTypes para integrar los datos de ejemplo con el proyecto. Se pueden asignar valores a las propiedades de solo lectura. Para obtener más información, vea Tutorial: Usar datos de ejemplo en WPF Designer.

<StackPanel d:DataContext="{d:DesignData Source=./DesignData/SampleCustomer.xaml}" Grid.Row="0"></StackPanel>

d:DesignSource

Especifica un origen de datos en tiempo de diseño para un objeto CollectionViewSource. Esto hace que el diseñador reconozca la forma de los tipos. Esto le permite usar el generador de enlace de datos para crear enlaces.

<CollectionViewSource x:Key="CustomerViewSource" d:DesignSource="{d:DesignInstance local:Customer, CreateList=True}" /> 

d:IsDesignTimeCreatable

En la extensión de marcado d:DesignInstance, especifica que la instancia de diseño se crea a partir del tipo, y no a partir de un tipo sustitutivo generado por el diseñador.

<Grid d:DataContext="{d:DesignInstance local:Customer, IsDesignTimeCreatable=True}">

d:CreateList

En la extensión de marcado d:DesignInstance, especifica que la instancia de diseño es una lista del tipo especificado.

<CollectionViewSource x:Key="CustomerViewSource" d:DesignSource="{d:DesignInstance local:Customer, CreateList=True}" />

d:Type

En la extensión de marcado d:DesignInstance, especifica el tipo que se va a crear. Utilice d:IsDesignTimeCreatable para especificar si se crea una instancia, el tipo o un tipo sustitutivo generado por el diseñador.

<CollectionViewSource x:Key="CustomerViewSource" d:DesignSource="{d:DesignInstance Type=local:Customer, CreateList=True}" />

Acceso a los atributos en tiempo de diseño

Puede obtener acceso a los atributos en tiempo de diseño a través del espacio de nombres https://schemas.microsoft.com/expression/blend/2008. El espacio de nombres se asigna automáticamente al hacer clic en la etiqueta de tamaño de raíz (etiqueta de tamaño de elemento raíz) que aparece en la parte inferior derecha de MainWindow en la Vista de diseño.

Acciones de compilación

Para habilitar d:DesignData, establezca acciones de compilación en los archivos XAML que contienen los datos de ejemplo. En la tabla siguiente se describen las acciones de compilación. Para obtener más información, vea Tutorial: Usar datos de ejemplo en WPF Designer.

Acción de compilación

Descripción

DesignData

Esta acción de compilación debe usarse cuando los tipos de datos de ejemplo no se pueden crear o tienen propiedades de solo lectura para las cuales se desean definir valores de datos de ejemplo. WPF y Silverlight Designer crea tipos suplentes que tienen las mismas propiedades que los tipos de objeto de negocios. No es necesario que los tipos se puedan crear. De esta forma se elimina la complejidad relacionada con los métodos de generador, tipos abstractos y conexiones de base de datos. Se pueden asignar valores a las propiedades de solo lectura.

DesignDataWithDesignTimeCreatableTypes

Esta acción de compilación debe usarse cuando los tipos de datos de ejemplo se pueden crear mediante sus constructores vacíos predeterminados. WPF y Silverlight Designer crean instancias de los tipos que se definen en el archivo de datos de ejemplo. Los tipos deben poder crearse en XAML.

Vea también

Tareas

Tutorial: Crear un enlace de datos mediante WPF Designer

Tutorial: Usar DesignInstance para enlazar datos en el diseñador

Otros recursos

Tutorial: Usar datos de ejemplo en WPF Designer