Xaml 调整窗口WPF 2010的大小时更改控件的位置
当应用程序未全屏打开时,它工作得非常好。然而,当我打开全屏时,我的按钮和“StudentsDataGrid”失去了它们的位置,我看不到它们在哪里。当我调整窗口大小时,按钮和DataGrid也会改变它们的位置。 这里的xaml是:Xaml 调整窗口WPF 2010的大小时更改控件的位置,xaml,position,Xaml,Position,当应用程序未全屏打开时,它工作得非常好。然而,当我打开全屏时,我的按钮和“StudentsDataGrid”失去了它们的位置,我看不到它们在哪里。当我调整窗口大小时,按钮和DataGrid也会改变它们的位置。 这里的xaml是: <Window x:Class="StudentsBoard.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http:/
<Window x:Class="StudentsBoard.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="996" Width="1191"
xmlns:my="clr-namespace:Students" Loaded="Window_Loaded"
WindowStartupLocation="CenterScreen" WindowStyle="SingleBorderWindow"
ResizeMode="CanResize" SizeChanged="Window_SizeChanged" SizeToContent="Manual"
WindowState="Maximized">
<Grid Name="MainGrid" DataContext="{StaticResource StudentViewSource}">
<Button Content="..." Height="40" HorizontalAlignment="Left"
VerticalAlignment="Top" Margin="1079,132,0,785" Name="btnbar_edit_student" Style="{DynamicResource GlassButtonBar}" Width="40" Click="btnbar_edit_student_Click" />
<Button Content="-" Height="40" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="1079,192,0,725" Name="btnbar_del_student" Style="{DynamicResource GlassButtonBar}" Width="40" Click="btnbar_del_student_Click" />
<DataGrid AutoGenerateColumns="False" EnableRowVirtualization="True" Height="177"
HorizontalAlignment="Left" VerticalAlignment="Top" ItemsSource="{Binding Source=
{StaticResource StudentViewSource}}" Margin="868,60,0,0" Name="StudentsDataGrid"
RowDetailsVisibilityMode="VisibleWhenSelected" Width="192"
MouseLeftButtonUp="StudentsDataGrid_MouseLeftButtonUp">
</DataGrid>
</Grid>
<ColumnDefinition Width="222*" />
<ColumnDefinition Width="211" />
<ColumnDefinition Width="159" />
<ColumnDefinition Width="282*" />
</Grid.ColumnDefinitions>
<ColumnDefinition Width="222*" />
<ColumnDefinition Width="211" />
<ColumnDefinition Width="159" />
<ColumnDefinition Width="282*" />
</Grid.ColumnDefinitions>
我希望元素保持完全相同的位置。
决定是什么?您可以对网格中的控件使用
水平对齐=拉伸
和垂直对齐=拉伸
<ColumnDefinition Width="222*" />
<ColumnDefinition Width="211" />
<ColumnDefinition Width="159" />
<ColumnDefinition Width="282*" />
</Grid.ColumnDefinitions>
另一种解决方案是为网格定义行和列。e、 g,`
<ColumnDefinition Width="222*" />
<ColumnDefinition Width="211" />
<ColumnDefinition Width="159" />
<ColumnDefinition Width="282*" />
</Grid.ColumnDefinitions>
`
<ColumnDefinition Width="222*" />
<ColumnDefinition Width="211" />
<ColumnDefinition Width="159" />
<ColumnDefinition Width="282*" />
</Grid.ColumnDefinitions>
这种情况的最佳方法是使用WPF提供的面板布局。例如DockPanel、StackPanel。您希望它们保持在完全相同的位置还是使用FormI调整大小?我希望元素保持在完全相同的位置。
<ColumnDefinition Width="222*" />
<ColumnDefinition Width="211" />
<ColumnDefinition Width="159" />
<ColumnDefinition Width="282*" />
</Grid.ColumnDefinitions>