网格容器调整大小和指定的高度和宽度 - C#WPF锚定

时间:2017-10-14 01:23:36

标签: c# .net wpf

使用边距指定上/左/下/右位置时,我的按钮和内部网格的位置不是我对以下xaml的预期:

<Window 
    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"
    mc:Ignorable="d" x:Class="WpfApplication1.MainWindow"
    Title="Dialog" WindowStartupLocation="CenterScreen"  ResizeMode="CanResize" Height="399" Width="590">

<Grid  HorizontalAlignment="Stretch" VerticalAlignment="Stretch" 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:sys="clr-namespace:System;assembly=mscorlib"  x:Name="TopÆLeftÆRight596" Background="#FFFFFF">
    <Grid Margin="150, 85, 153, 110" x:Name="Panel597" Background="#EEEEEE">
        <Button Margin="97,77,108,101" x:Name="BLANK_BUTTON598" ToolTip="Blank" Cursor="Arrow" FontFamily="Arial" FontSize="12" FontWeight="Normal" Foreground="#000000" Content="Blank"  />
    </Grid>      
</Grid>

我相信发生的事情是因为我的容器网格设置为拉伸(x:Name =“TopÆLeftÆRight596”),边距是从包含标题栏的窗口计算出来的。如果我在该网格上设置高度和宽度,则无法再调整内部控件的大小。

我需要一种方法来指定窗口上的高度/宽度值,或者可能是另一种类型的容器,以便边距计算不包括标题栏,并且在调整窗口大小时内部内容会增大和缩小。

请记住,我无法控制所提供的左/上/右/下边距值。

本质上,我要做的是复制网格的顶部/左侧/底部/右侧锚点(x:Name =“Panel597”)和Button(x:Name =“BLANK_BUTTON598”)控件。

任何帮助都非常感谢。谢谢。

0 个答案:

没有答案