Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

387
Vistas
¿Por qué la barra de estado tiene la mitad del ancho de la ventana?

Tengo una ventana bastante mínima definida en XAML. Desafortunadamente, la StatusBar de estado solo ocupa la mitad del ancho y no se extiende por todo el ancho de la ventana.

¿Por qué es eso / cómo lo soluciono?

 <Window x:Class="TheProject.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:TheProject" mc:Ignorable="d" Title="MainWindow" Height="450" Width="771.382"> <DockPanel Margin="0,0,0,0" LastChildFill="False"> <Button Content="Button" HorizontalAlignment="Left" Margin="289,127,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/> <StatusBar DockPanel.Dock="Bottom" Height="21"> <StatusBarItem x:Name="actionStatus" Content="StatusBarItem"/> </StatusBar> </DockPanel> </Window>
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

El valor predeterminado de la propiedad DockPanel.Dock es Left . Es por eso que su Button (que viene primero en el marcado) se alinea a la izquierda y luego el espacio restante a la derecha se usa para alinear los otros controles. Dado que asigna Bottom a la StatusBar de estado (que viene en segundo lugar), se alineará en la parte inferior del espacio restante. El orden de los controles es importante en un DockPanel .

Puede probar esto cambiando el orden de los controles, lo que alineará primero la StatusBar de estado.

 <DockPanel Margin="0,0,0,0" LastChildFill="False"> <StatusBar DockPanel.Dock="Bottom" Height="21"> <StatusBarItem x:Name="actionStatus" Content="StatusBarItem"/> </StatusBar> <Button Content="Button" HorizontalAlignment="Left" Margin="289,127,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/> </DockPanel>

Otro enfoque es establecer la propiedad Dock en el Button en la parte Top , lo que lo alinea en la parte superior y deja el espacio restante debajo , lo que también alineará la StatusBar de estado a la derecha.

 <DockPanel Margin="0,0,0,0" LastChildFill="False"> <Button DockPanel.Dock="Top" Content="Button" HorizontalAlignment="Left" Margin="289,127,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/> <StatusBar DockPanel.Dock="Bottom" Height="21"> <StatusBarItem x:Name="actionStatus" Content="StatusBarItem"/> </StatusBar> </DockPanel>

Solo como una nota, también hay otras opciones, como eliminar LastChildFill="False" y definir el botón en último lugar, pero eso realmente depende de sus requisitos. Lo importante que hay que entender es cómo DockPanel divide el espacio y en qué orden, mira esto como referencia:

La posición de los elementos secundarios de un DockPanel en la pantalla está determinada por la propiedad Dock de los elementos secundarios respectivos y el orden relativo de esos elementos secundarios en el DockPanel . Por lo tanto, un conjunto de elementos secundarios con los mismos valores de propiedad Dock se pueden colocar de manera diferente en la pantalla según el orden de estos elementos secundarios en DockPanel . El ordenamiento secundario afecta el posicionamiento porque el DockPanel itera a través de sus elementos secundarios en orden, estableciendo la posición de cada elemento según el espacio restante .

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda