Wpf 表单对齐和调整大小
Wpf Form Alignment & Resize
我正在尝试在 wpf 中制作表单,但我遇到了一些对齐问题。
这种形式很特殊,因为它由一组具有不同列数的行组成。
这是我目前得到的:
我有 2 个问题。
1) 对齐
如果两行的列数不同,如何将一行中的文本框与下方行中的文本框对齐。
我想这样对齐:
T1 左侧到T3 左侧,T2 右侧到T3 右侧。
在调整大小时,T3 应该拉伸并且 T1 和 T2 彼此靠近。
2) 调整大小
每个列的高度都是父网格高度的百分比<RowDefinition Height="62*"/>
,文本框和标签随VerticalAlignment="Stretch"
浮动,我想当我降低高度时是否会那样做表单 TextBox 会彼此靠得更近,但它们不会,并且一些 TextBox 会从屏幕上切掉。
这是XAML代码:
<UserControl x:Class="my.Controles.Clientes.ControlVerClientes"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="750" d:DesignWidth="1900" Loaded="ControlVerClientes_Load">
<Grid Background="Gold" >
<Grid Name="SubInterfazAdministrarClientes">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="55*" />
<ColumnDefinition Width="100*" />
<ColumnDefinition Width="75*" />
</Grid.ColumnDefinitions>
<Grid Grid.Column ="0">
<Grid Margin="10">
<Grid.RowDefinitions>
<RowDefinition Height="40"/>
<RowDefinition />
</Grid.RowDefinitions>
<TextBox x:Name="TextBoxBuscarCliente" Grid.Row="0" TextChanged="TextBoxBuscarCliente_Change"/>
<ListBox x:Name="ListBoxBuscarClientes" Grid.Row="1" Margin="0,20,0,0" SelectionChanged="ListBoxBuscarClientes_SelectionChanged"/>
</Grid>
</Grid>
<Grid Grid.Column ="1">
<Grid HorizontalAlignment="Stretch" Height="680" Margin="10,70,0,0" VerticalAlignment="Stretch" >
<Grid.RowDefinitions>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="120*"/>
<RowDefinition Height="65*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Nombre" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Height="24" Width="76" />
<TextBox HorizontalAlignment="Stretch" Height="24" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Nombre}" VerticalAlignment="Stretch" Width="220" />
</Grid>
<Grid Grid.Column="1">
<Label Content="Apellido" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch"/>
<TextBox HorizontalAlignment="Stretch" Height="24" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Apellido}" VerticalAlignment="Stretch" Width="220"/>
</Grid>
</Grid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Documento" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch"/>
<TextBox HorizontalAlignment="Stretch" Height="22" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Documento}" VerticalAlignment="Stretch" Width="220"/>
</Grid>
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Descuento Fijo" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="124"/>
<TextBox HorizontalAlignment="Stretch" Height="23" Margin="0,0,0,0" TextWrapping="Wrap" Text="0" VerticalAlignment="Stretch" Width="150" PreviewTextInput="TextboxValidacionNumerica"/>
<Label Content="%" HorizontalAlignment="Stretch" Margin="130,0,0,0" VerticalAlignment="Stretch" Height="23" Width="19" RenderTransformOrigin="0.395,0.294" Background="Transparent"/>
</Grid>
<Grid Grid.Column="1">
<Label Content="Estado" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="124"/>
<ComboBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="23" Width="150" Text="{Binding Estado}" DisplayMemberPath="Estado" />
</Grid>
</Grid>
</Grid>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Telefono 1" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Height="23"/>
<TextBox HorizontalAlignment="Stretch" Height="23" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Telefono1}" VerticalAlignment="Stretch" Width="220"/>
</Grid>
<Grid Grid.Column="1">
<Label Content="Telefono 2" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Height="23"/>
<TextBox HorizontalAlignment="Stretch" Height="24" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Telefono2}" VerticalAlignment="Stretch" Width="220"/>
</Grid>
</Grid>
<Grid Grid.Row="3">
<Label Content="Email" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Height="23"/>
<TextBox HorizontalAlignment="Stretch" Height="24" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Email}" VerticalAlignment="Stretch" Width="578"/>
</Grid>
<Grid Grid.Row="4">
<Label Content="Direccion" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch"/>
<TextBox HorizontalAlignment="Stretch" Height="22" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Direccion}" VerticalAlignment="Stretch" Width="578"/>
</Grid>
<Grid Grid.Row="5">
<Label Content="Hotel/Habitacion" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch"/>
<TextBox HorizontalAlignment="Stretch" Height="22" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Hotel_Habitacion}" VerticalAlignment="Stretch" Width="578"/>
</Grid>
<Grid Grid.Row="6">
<Label Content="Contacto" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="138"/>
<TextBox HorizontalAlignment="Stretch" Height="96" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Contacto}" VerticalAlignment="Stretch" Width="578"/>
</Grid>
<Grid Grid.Row="7">
<Label Content="{Binding ClienteActual.InfoCreacion}" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="578"/>
</Grid>
</Grid>
</Grid>
</Grid>
</Grid>
</UserControl>
此外,如果您知道更好的方法,我很想听听。
非常感谢!!
1.对齐方式
为此,您需要删除 Width
,设置 HorizontalAlignment = Strecth
,并匹配 T2 和 T3 的右边距。
2。推荐布局
<Window ...>
<Grid Background="Gold" >
<Grid Name="SubInterfazAdministrarClientes">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="34*" />
<ColumnDefinition Width="102*" />
<ColumnDefinition Width="37*" />
</Grid.ColumnDefinitions>
<Grid Grid.Column ="0">
<Grid Margin="10">
<Grid.RowDefinitions>
<RowDefinition Height="40"/>
<RowDefinition />
</Grid.RowDefinitions>
<TextBox x:Name="TextBoxBuscarCliente" Grid.Row="0" />
<ListBox x:Name="ListBoxBuscarClientes" Grid.Row="1" Margin="0,20,0,0" />
</Grid>
</Grid>
<Grid Grid.Column ="1">
<Grid HorizontalAlignment="Stretch" Height="680" Margin="10,70,0,0" VerticalAlignment="Stretch" >
<Grid.RowDefinitions>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="120*"/>
<RowDefinition Height="65*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<StackPanel Margin="10">
<Label Content="Nombre"/>
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Nombre}"/>
</StackPanel>
</Grid>
<Grid Grid.Column="1">
<StackPanel Margin="10">
<Label Content="Apellido" />
<TextBox HorizontalAlignment="Stretch" TextWrapping="Wrap" Text="{Binding ClienteActual.Apellido}"/>
</StackPanel>
</Grid>
</Grid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<StackPanel Orientation="Vertical" Margin="10">
<Label Content="Documento" />
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Documento}"/>
</StackPanel>
</Grid>
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="108*" />
<ColumnDefinition Width="91*" />
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<StackPanel Orientation="Vertical" Margin="10">
<Label Content="Descuento Fijo"/>
<TextBox TextWrapping="Wrap" Text="0" />
<Label Content="%" Background="Transparent" />
</StackPanel>
</Grid>
<Grid Grid.Column="1">
<StackPanel Margin="10">
<Label Content="Estado" />
<ComboBox Text="{Binding Estado}" DisplayMemberPath="Estado" />
</StackPanel>
</Grid>
</Grid>
</Grid>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<StackPanel Orientation="Vertical" Margin="10">
<Label Content="Telefono 1" />
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Telefono1}" />
</StackPanel>
</Grid>
<Grid Grid.Column="1">
<StackPanel Margin="10">
<Label Content="Telefono 2"/>
<TextBox Text="{Binding ClienteActual.Telefono2}"/>
</StackPanel>
</Grid>
</Grid>
<Grid Grid.Row="3">
<StackPanel Margin="10">
<Label Content="Email" DockPanel.Dock="Left" />
<TextBox DockPanel.Dock="Left" TextWrapping="Wrap" Text="{Binding ClienteActual.Email}" />
</StackPanel>
</Grid>
<Grid Grid.Row="4">
<StackPanel Margin="10">
<Label Content="Direccion" />
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Direccion}" />
</StackPanel>
</Grid>
<Grid Grid.Row="5">
<StackPanel Margin="10">
<Label Content="Hotel/Habitacion"/>
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Hotel_Habitacion}" />
</StackPanel>
</Grid>
<Grid Grid.Row="6">
<StackPanel Margin="10">
<Label Content="Contacto"/>
<TextBox Height="96" TextWrapping="Wrap" Text="{Binding ClienteActual.Contacto}"/>
</StackPanel>
</Grid>
<Grid Grid.Row="7">
<Label Content="{Binding ClienteActual.InfoCreacion}" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="578"/>
</Grid>
</Grid>
</Grid>
</Grid>
</Grid>
</Window>
如果您希望在调整大小时 Window 折叠行高,那可能不是最好的做法,因为必须有一些有意义的高度,低于该高度时表格将变得无用。您可以试验 MinHeight
个值。
我正在尝试在 wpf 中制作表单,但我遇到了一些对齐问题。
这种形式很特殊,因为它由一组具有不同列数的行组成。
这是我目前得到的:
我有 2 个问题。
1) 对齐
如果两行的列数不同,如何将一行中的文本框与下方行中的文本框对齐。
我想这样对齐:
T1 左侧到T3 左侧,T2 右侧到T3 右侧。 在调整大小时,T3 应该拉伸并且 T1 和 T2 彼此靠近。
2) 调整大小
每个列的高度都是父网格高度的百分比<RowDefinition Height="62*"/>
,文本框和标签随VerticalAlignment="Stretch"
浮动,我想当我降低高度时是否会那样做表单 TextBox 会彼此靠得更近,但它们不会,并且一些 TextBox 会从屏幕上切掉。
这是XAML代码:
<UserControl x:Class="my.Controles.Clientes.ControlVerClientes"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="750" d:DesignWidth="1900" Loaded="ControlVerClientes_Load">
<Grid Background="Gold" >
<Grid Name="SubInterfazAdministrarClientes">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="55*" />
<ColumnDefinition Width="100*" />
<ColumnDefinition Width="75*" />
</Grid.ColumnDefinitions>
<Grid Grid.Column ="0">
<Grid Margin="10">
<Grid.RowDefinitions>
<RowDefinition Height="40"/>
<RowDefinition />
</Grid.RowDefinitions>
<TextBox x:Name="TextBoxBuscarCliente" Grid.Row="0" TextChanged="TextBoxBuscarCliente_Change"/>
<ListBox x:Name="ListBoxBuscarClientes" Grid.Row="1" Margin="0,20,0,0" SelectionChanged="ListBoxBuscarClientes_SelectionChanged"/>
</Grid>
</Grid>
<Grid Grid.Column ="1">
<Grid HorizontalAlignment="Stretch" Height="680" Margin="10,70,0,0" VerticalAlignment="Stretch" >
<Grid.RowDefinitions>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="120*"/>
<RowDefinition Height="65*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Nombre" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Height="24" Width="76" />
<TextBox HorizontalAlignment="Stretch" Height="24" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Nombre}" VerticalAlignment="Stretch" Width="220" />
</Grid>
<Grid Grid.Column="1">
<Label Content="Apellido" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch"/>
<TextBox HorizontalAlignment="Stretch" Height="24" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Apellido}" VerticalAlignment="Stretch" Width="220"/>
</Grid>
</Grid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Documento" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch"/>
<TextBox HorizontalAlignment="Stretch" Height="22" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Documento}" VerticalAlignment="Stretch" Width="220"/>
</Grid>
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Descuento Fijo" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="124"/>
<TextBox HorizontalAlignment="Stretch" Height="23" Margin="0,0,0,0" TextWrapping="Wrap" Text="0" VerticalAlignment="Stretch" Width="150" PreviewTextInput="TextboxValidacionNumerica"/>
<Label Content="%" HorizontalAlignment="Stretch" Margin="130,0,0,0" VerticalAlignment="Stretch" Height="23" Width="19" RenderTransformOrigin="0.395,0.294" Background="Transparent"/>
</Grid>
<Grid Grid.Column="1">
<Label Content="Estado" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="124"/>
<ComboBox HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="23" Width="150" Text="{Binding Estado}" DisplayMemberPath="Estado" />
</Grid>
</Grid>
</Grid>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Telefono 1" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Height="23"/>
<TextBox HorizontalAlignment="Stretch" Height="23" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Telefono1}" VerticalAlignment="Stretch" Width="220"/>
</Grid>
<Grid Grid.Column="1">
<Label Content="Telefono 2" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Height="23"/>
<TextBox HorizontalAlignment="Stretch" Height="24" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Telefono2}" VerticalAlignment="Stretch" Width="220"/>
</Grid>
</Grid>
<Grid Grid.Row="3">
<Label Content="Email" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Height="23"/>
<TextBox HorizontalAlignment="Stretch" Height="24" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Email}" VerticalAlignment="Stretch" Width="578"/>
</Grid>
<Grid Grid.Row="4">
<Label Content="Direccion" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch"/>
<TextBox HorizontalAlignment="Stretch" Height="22" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Direccion}" VerticalAlignment="Stretch" Width="578"/>
</Grid>
<Grid Grid.Row="5">
<Label Content="Hotel/Habitacion" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch"/>
<TextBox HorizontalAlignment="Stretch" Height="22" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Hotel_Habitacion}" VerticalAlignment="Stretch" Width="578"/>
</Grid>
<Grid Grid.Row="6">
<Label Content="Contacto" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="138"/>
<TextBox HorizontalAlignment="Stretch" Height="96" Margin="0,0,0,0" TextWrapping="Wrap" Text="{Binding ClienteActual.Contacto}" VerticalAlignment="Stretch" Width="578"/>
</Grid>
<Grid Grid.Row="7">
<Label Content="{Binding ClienteActual.InfoCreacion}" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="578"/>
</Grid>
</Grid>
</Grid>
</Grid>
</Grid>
</UserControl>
此外,如果您知道更好的方法,我很想听听。 非常感谢!!
1.对齐方式
为此,您需要删除 Width
,设置 HorizontalAlignment = Strecth
,并匹配 T2 和 T3 的右边距。
2。推荐布局
<Window ...>
<Grid Background="Gold" >
<Grid Name="SubInterfazAdministrarClientes">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="34*" />
<ColumnDefinition Width="102*" />
<ColumnDefinition Width="37*" />
</Grid.ColumnDefinitions>
<Grid Grid.Column ="0">
<Grid Margin="10">
<Grid.RowDefinitions>
<RowDefinition Height="40"/>
<RowDefinition />
</Grid.RowDefinitions>
<TextBox x:Name="TextBoxBuscarCliente" Grid.Row="0" />
<ListBox x:Name="ListBoxBuscarClientes" Grid.Row="1" Margin="0,20,0,0" />
</Grid>
</Grid>
<Grid Grid.Column ="1">
<Grid HorizontalAlignment="Stretch" Height="680" Margin="10,70,0,0" VerticalAlignment="Stretch" >
<Grid.RowDefinitions>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="62*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="120*"/>
<RowDefinition Height="65*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<StackPanel Margin="10">
<Label Content="Nombre"/>
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Nombre}"/>
</StackPanel>
</Grid>
<Grid Grid.Column="1">
<StackPanel Margin="10">
<Label Content="Apellido" />
<TextBox HorizontalAlignment="Stretch" TextWrapping="Wrap" Text="{Binding ClienteActual.Apellido}"/>
</StackPanel>
</Grid>
</Grid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<StackPanel Orientation="Vertical" Margin="10">
<Label Content="Documento" />
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Documento}"/>
</StackPanel>
</Grid>
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="108*" />
<ColumnDefinition Width="91*" />
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<StackPanel Orientation="Vertical" Margin="10">
<Label Content="Descuento Fijo"/>
<TextBox TextWrapping="Wrap" Text="0" />
<Label Content="%" Background="Transparent" />
</StackPanel>
</Grid>
<Grid Grid.Column="1">
<StackPanel Margin="10">
<Label Content="Estado" />
<ComboBox Text="{Binding Estado}" DisplayMemberPath="Estado" />
</StackPanel>
</Grid>
</Grid>
</Grid>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="135*"/>
<ColumnDefinition Width="148*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<StackPanel Orientation="Vertical" Margin="10">
<Label Content="Telefono 1" />
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Telefono1}" />
</StackPanel>
</Grid>
<Grid Grid.Column="1">
<StackPanel Margin="10">
<Label Content="Telefono 2"/>
<TextBox Text="{Binding ClienteActual.Telefono2}"/>
</StackPanel>
</Grid>
</Grid>
<Grid Grid.Row="3">
<StackPanel Margin="10">
<Label Content="Email" DockPanel.Dock="Left" />
<TextBox DockPanel.Dock="Left" TextWrapping="Wrap" Text="{Binding ClienteActual.Email}" />
</StackPanel>
</Grid>
<Grid Grid.Row="4">
<StackPanel Margin="10">
<Label Content="Direccion" />
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Direccion}" />
</StackPanel>
</Grid>
<Grid Grid.Row="5">
<StackPanel Margin="10">
<Label Content="Hotel/Habitacion"/>
<TextBox TextWrapping="Wrap" Text="{Binding ClienteActual.Hotel_Habitacion}" />
</StackPanel>
</Grid>
<Grid Grid.Row="6">
<StackPanel Margin="10">
<Label Content="Contacto"/>
<TextBox Height="96" TextWrapping="Wrap" Text="{Binding ClienteActual.Contacto}"/>
</StackPanel>
</Grid>
<Grid Grid.Row="7">
<Label Content="{Binding ClienteActual.InfoCreacion}" HorizontalAlignment="Stretch" Margin="0,0,0,0" VerticalAlignment="Stretch" Width="578"/>
</Grid>
</Grid>
</Grid>
</Grid>
</Grid>
</Window>
如果您希望在调整大小时 Window 折叠行高,那可能不是最好的做法,因为必须有一些有意义的高度,低于该高度时表格将变得无用。您可以试验 MinHeight
个值。