WPF桌面应用程序布局困境

时间:2012-01-20 11:42:19

标签: c# wpf gridpanel gridsplitter dockpanel

我想开发我的第一个真正的WPF桌面应用程序。自从我上一次使用.NET 2.0和Windows Forms开发的桌面应用程序以来,已经有相当多的时间了。由于我必须开发一个新的桌面应用程序,并且我可以利用.NET 4.0,我真的想使用WPF。

我正在阅读一些在线教程和文档,以选择正确的方法来做到这一点,但我对新控件有点迷失。

基本上我需要一个面板,它在数据网格上方显示一些文本框和标签。 你认为我可以通过网格面板控制实现这样的结果吗? 谢谢。

Sample

2 个答案:

答案 0 :(得分:3)

在WPF中,您通常使用几种不同的控件。 WPF中的控制组合是一项重要功能,通过了解并充分利用它,您将获得很多收益。

在查看屏幕时,我将其划分为两个主要部分:    - campi di ricerca    - 结果

对于这两个,我使用一个有两行一列的网格。 ricerca区域可以使用DockPanel,顶部对齐标题,另一个Grid With Fill内容。

......等等。

我最好的建议是了解 WPF撰写

希望我有所帮助

答案 1 :(得分:1)

是的,您需要使用包含多行和多列的Grid

请参阅MSDN上的示例

        <Grid VerticalAlignment="Top" HorizontalAlignment="Left" ShowGridLines="True" Width="250" Height="100">
            <Grid.ColumnDefinitions>
                <ColumnDefinition />
                <ColumnDefinition />
                <ColumnDefinition />
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition />
                <RowDefinition />
                <RowDefinition />
                <RowDefinition />
            </Grid.RowDefinitions>

            <TextBlock FontSize="20" FontWeight="Bold" Grid.ColumnSpan="3" Grid.Row="0">2005 Products Shipped</TextBlock>
            <TextBlock FontSize="12" FontWeight="Bold" Grid.Row="1" Grid.Column="0">Quarter 1</TextBlock>
            <TextBlock FontSize="12" FontWeight="Bold" Grid.Row="1" Grid.Column="1">Quarter 2</TextBlock>
            <TextBlock FontSize="12" FontWeight="Bold" Grid.Row="1" Grid.Column="2">Quarter 3</TextBlock>
            <TextBlock Grid.Row="2" Grid.Column="0">50000</TextBlock>
            <TextBlock Grid.Row="2" Grid.Column="1">100000</TextBlock>
            <TextBlock Grid.Row="2" Grid.Column="2">150000</TextBlock>
            <TextBlock FontSize="16" FontWeight="Bold" Grid.ColumnSpan="3" Grid.Row="3">Total Units: 300000</TextBlock>
        </Grid>