0

我有这个 Windows 应用程序:

<Window x:Class="PlayTube.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="800" Width="1400">
<Grid Background="#FFD86F6F">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <Grid Height="70" Background="#FF9A9A9A">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="Auto"/>
            <ColumnDefinition Width="Auto"/>
        </Grid.ColumnDefinitions>

        <TextBox Grid.Column="1" Height="25" Width="200" Name="SearchTextBox" />
        <Button Grid.Column="2" Height="25" Width="80" Content="Search" Click="Button_Click" />
    </Grid>

    <Grid Grid.Row="1">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="200" MaxWidth="250" />
            <ColumnDefinition Width="Auto"/>
            <ColumnDefinition Width="300" MaxWidth="350"/>
            <ColumnDefinition Width="Auto"/>
            <ColumnDefinition Width="*"/>
        </Grid.ColumnDefinitions>

        <Grid Background="#FFFFFF89">

        </Grid>

        <GridSplitter HorizontalAlignment="Right" 
              VerticalAlignment="Stretch" 
              Grid.Column="1" ResizeBehavior="PreviousAndNext"
              Width="5" Background="#FFBCBCBC" />

        <Grid Background="#FF05BECB" Grid.Column="2">

        </Grid>

        <GridSplitter HorizontalAlignment="Right" 
              VerticalAlignment="Stretch" 
              Grid.Column="3" ResizeBehavior="PreviousAndNext"
              Width="5" Background="#FFBCBCBC"/>

        <Grid Background="#FF4E04A7" Grid.Column="4">
            <MediaElement Stretch="Fill" />
        </Grid>
    </Grid>
</Grid>

如您所见,我有 3 个Grids,我想知道是否有可能从一个类管理每个网格,因为我不希望所有逻辑都在这个 Windows 主类中。

4

1 回答 1

2

右键单击您的项目,选择添加子菜单,然后选择用户控件,您应该会看到此对话框。

在此处输入图像描述

给控件起个名字,然后点击确定

构建您的项目并查看工具箱,您应该会在顶部看到您添加的新用户控件将在那里。

在此处输入图像描述

将此项目拖到网格的内容中,它应该为您设置所有内容。

这样做之后,我的窗口现在看起来像

<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="clr-namespace:WpfApplication1" x:Class="WpfApplication1.MainWindow"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <local:UserControl1 HorizontalAlignment="Left" Height="100" VerticalAlignment="Top" Width="100"/>
    </Grid>
</Window>
于 2013-02-28T10:22:37.640 回答