WPF编译时不显示屏幕上显示的内容

时间:2012-12-18 02:01:47

标签: c# wpf gridview alignment

我是WPF的新手并且习惯了winforms。我不明白为什么编译后的输出与设计视图中的输出不同。我发现这有点令人讨厌和误导。

添加元素时,我将它们捕捉到红色边框,结果与我在编译窗口中看到的结果不一致。在winforms中,我习惯使用表格布局,面板,对接和对齐项目。是否有正确的方法在WPF中执行此操作以获得一致的结果?

Designer View

XAML

<Window x:Class="WpfApplication4.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Left" Height="300" Margin="10,10,0,0" Stroke="Black" VerticalAlignment="Top" Width="497"/>
    </Grid>
</Window>

The output

1 个答案:

答案 0 :(得分:2)

在WPF中,大多数容器都没有儿童位置的概念。相反,大多数控件使用MarginHorizontalAlignmentVerticalAlignment等属性来定义其布局。此外,特定容器提供不同的功能。如果您想要停靠,可以使用DockPanel。如果您想要堆叠元素,可以使用StackPanel等。我建议你在线查看一些教程,这是很多资源。

在您的情况下,如果您希望控件完全填充其容器,请删除MarginVerticalAlignmentHorizontalAlignmentWidthHeight属性来自其XAML代码。