Información
El tema que ha solicitado se muestra abajo. Sin embargo, este tema no se encuentra en la biblioteca.

FrameworkElement.MaxWidth (Propiedad)

Actualización: noviembre 2007

Obtiene o establece la restricción de ancho máximo del elemento. Se trata de una propiedad de dependencia.

Espacio de nombres:  System.Windows
Ensamblado:  PresentationFramework (en PresentationFramework.dll)
XMLNS para XAML: http://schemas.microsoft.com/winfx/xaml/presentation

[TypeConverterAttribute(typeof(LengthConverter))]
[LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable)]
public double MaxWidth { get; set; }
/** @property */
/** @attribute TypeConverterAttribute(LengthConverter) */
/** @attribute LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable) */
public double get_MaxWidth()
/** @property */
/** @attribute TypeConverterAttribute(LengthConverter) */
/** @attribute LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable) */
public  void set_MaxWidth(double value)

public function get MaxWidth () : double
public function set MaxWidth (value : double)
<object MaxWidth="double"/>
- or -
<object MaxWidth="qualifiedDouble"/>
double
                    Double
                
                    Representación de cadena de un valor de tipo Double igual o mayor que 0,0. Esto se interpreta como una medida en unidad independiente de dispositivo (1/96 de pulgada). No es preciso incluir explícitamente separadores decimales en las cadenas. Por ejemplo, el valor 1 es aceptable. 
                
                    Se aplican las mismas restricciones de intervalo Double que se mencionaron en la sección Valor de la propiedad, sólo que debe utilizar Extensiones de marcado x:Static para establecer el valor como PositiveInfinity.
                qualifiedDouble
                    Valor double, descrito anteriormente, seguido de una de las siguientes cadenas de declaración de unidades: px, in, cm, pt.
                
                    px (valor predeterminado) es unidades independientes de dispositivo (1/96 de pulgada por unidad)
                
                    in significa pulgadas; 1 in==96 px
                
                    cm significa centímetros; 1 cm==(96/2,54) px
                
                    pt significa puntos; 1 pt==(96/72) px
                

Valor de propiedad

Tipo: System.Double
Ancho máximo del elemento, en unidades independientes de dispositivo (1/96 de pulgada por unidad). El valor predeterminado es PositiveInfinity. Este valor puede ser cualquier valor igual o mayor que 0,0. PositiveInfinity también es válido.

Campo identificador

MaxWidthProperty

Propiedades de metadatos establecidas en true

AffectsMeasure

Ésta es una de las tres propiedades de FrameworkElement que especifican información de ancho. Las otras dos son MinWidth y Width. Si existe un conflicto entre estos valores, el orden de aplicación para determinar el ancho real es: primero se debe aplicar la propiedad MinWidth, después la propiedad MaxWidth y, finalmente, si cada una de ellas está dentro de los límites, la propiedad Width.

Las restricciones del valor de Double se aplican mediante un mecanismo de ValidateValueCallback. Si intenta establecer un valor no válido, se produce una excepción en tiempo de ejecución.

En este ejemplo se muestran los distintos comportamientos de representación de las cuatro propiedades de Windows Presentation Foundation (WPF) que están relacionadas con el ancho.

La clase FrameworkElement expone cuatro propiedades que describen las características de ancho de un elemento. Estas cuatro propiedades pueden generar conflictos y, en ese caso, el valor que tiene prioridad se determina de la manera siguiente: el valor de MinWidth tiene prioridad sobre el valor de MaxWidth, que a su vez tiene prioridad sobre el valor de Width. La cuarta propiedad, ActualWidth, es de sólo lectura.

En los siguientes ejemplos de Lenguaje de marcado de aplicaciones extensible (XAML) se dibuja un elemento Rectangle (rect1) como un elemento secundario de Canvas. Puede cambiar las propiedades de ancho de Rectangle por medio de una serie de controles ListBox que representan los valores de propiedad de MinWidth, MaxWidth y Width. De esta manera, la prioridad de cada propiedad se muestra visualmente.

<Canvas Height="200" MinWidth="200" Background="#b0c4de" VerticalAlignment="Top"  HorizontalAlignment="Center" Name="myCanvas">
    <Rectangle HorizontalAlignment="Center" Canvas.Top="50" Canvas.Left="50"  Name="rect1" Fill="#4682b4" Width="100" Height="100"/>
</Canvas>


...

    <TextBlock Grid.Row="1" Grid.Column="0" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle Width:</TextBlock>
    <ListBox Grid.Column="1" Grid.Row="1" Margin="10,0,0,0" Width="50" Height="50" SelectionChanged="changeWidth">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
      <ListBoxItem>225</ListBoxItem>
      <ListBoxItem>250</ListBoxItem>
    </ListBox>

	<TextBlock Grid.Row="1" Grid.Column="2" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MinWidth:</TextBlock>
    <ListBox Grid.Column="3" Grid.Row="1" Margin="10,0,0,0" Width="50" Height="50" SelectionChanged="changeMinWidth">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
      <ListBoxItem>225</ListBoxItem>
      <ListBoxItem>250</ListBoxItem>
  </ListBox>      

    <TextBlock Grid.Row="1" Grid.Column="4" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MaxWidth:</TextBlock>
    <ListBox Grid.Column="5" Grid.Row="1" Margin="10,0,0,0" Width="50" Height="50" SelectionChanged="changeMaxWidth">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
      <ListBoxItem>225</ListBoxItem>
      <ListBoxItem>250</ListBoxItem>  
    </ListBox>


Los siguientes ejemplos de código subyacente permiten controlar los eventos que provoca el evento SelectionChanged. Cada método personalizado acepta la entrada de ListBox, analiza el valor como Double y aplica el valor a la propiedad relacionada con el ancho especificada. Los valores de ancho también se convierten en cadena y se escriben en un elemento TextBlock denominado txt1.

private void changeWidth(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.Width = sz1;
    rect1.UpdateLayout();
    txt1.Text = "ActualWidth is set to " + rect1.ActualWidth;
    txt2.Text = "Width is set to " + rect1.Width;
    txt3.Text = "MinWidth is set to " + rect1.MinWidth;
    txt4.Text = "MaxWidth is set to " + rect1.MaxWidth;
}
private void changeMinWidth(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.MinWidth = sz1;
    rect1.UpdateLayout();
    txt1.Text = "ActualWidth is set to " + rect1.ActualWidth;
    txt2.Text = "Width is set to " + rect1.Width;
    txt3.Text = "MinWidth is set to " + rect1.MinWidth;
    txt4.Text = "MaxWidth is set to " + rect1.MaxWidth;
}
private void changeMaxWidth(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.MaxWidth = sz1;
    rect1.UpdateLayout();
    txt1.Text = "ActualWidth is set to " + rect1.ActualWidth;
    txt2.Text = "Width is set to " + rect1.Width;
    txt3.Text = "MinWidth is set to " + rect1.MinWidth;
    txt4.Text = "MaxWidth is set to " + rect1.MaxWidth;
}


Para obtener el ejemplo completo, vea Ejemplo Width Properties Comparison.

Windows Vista

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

Compatible con: 3.5, 3.0

Adiciones de comunidad

Mostrar:
© 2014 Microsoft