布局导航窗口

时间:2011-11-24 02:57:53

标签: wpf xaml layout navigationwindow

我想使用以下布局结构构建WPF窗口应用程序。考虑左侧框架/窗口上的标题和按钮,如ASP.Net中的“母版页”。在右侧框架上,它应该是一个WPF导航窗口。

当我在最后一个堆栈面板中包含导航窗口作为UI元素时,它会抛出我并输出错误。我应该如何根据下面的图片截图设计整个布局?谢谢

<Window x:Class="MainWindow"
     xmlns:local="clr-namespace:ClientSocket"        
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title=" Desktop" Height="841" Width="1271" WindowStartupLocation="CenterScreen" WindowState="Maximized">
    <DockPanel>
        <StackPanel DockPanel.Dock ="Top"  Orientation="Horizontal" Background="Red">
            <TextBlock  Background="red"  FontSize ="36" Width="482" >
           Main Title
            </TextBlock>          
        </StackPanel>
        <StackPanel Background="LightGray" DockPanel.Dock ="Left" Width="145">
            <Button Content="Button1" Name="btnAndroid" Width="119" Margin="3" BorderBrush="{StaticResource {x:Static SystemColors.InfoBrushKey}}" />
            <Button Content="Button2" Name="btnDownloads" Width="119" Margin="3" BorderBrush="{StaticResource {x:Static SystemColors.InfoBrushKey}}" />
            <Button Content="AddNewDownloads" Height="37" Name="Button1" Width="133" />
        </StackPanel>
        <StackPanel>
        <NavigationWindow Height="auto" Width="auto" Name="nwMain" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" BorderBrush="Blue" BorderThickness="1"  />
        </StackPanel>
    </DockPanel>
</Window>

enter image description here

1 个答案:

答案 0 :(得分:2)

你无法添加一个窗口作为任何东西的子窗口,你可以在这里使用一个可嵌套的导航控件,它被称为Frame

布局方面我会建议Grid有两个rows,包含另一个网格(在Grid.Row ="1"中),其中包含两个columns

DockPanels是可能不应该使用的悲伤控件,除非有人用枪指着你并告诉你。