Wpf 网格未对接 底部包含按钮的网格无法停靠。我做错了什么

Wpf 网格未对接 底部包含按钮的网格无法停靠。我做错了什么,wpf,Wpf,如何使同一网格不共享整个窗口定义的列?e、 我 希望不停靠的网格有自己的列,并且包含3个按钮 <Grid.RowDefinitions> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height="auto" /> <RowDefinition Height=

如何使同一网格不共享整个窗口定义的列?e、 我 希望不停靠的网格有自己的列,并且包含3个按钮

    <Grid.RowDefinitions>
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
    </Grid.RowDefinitions>

    <Label Content="Temp" Grid.Row="0" FontSize="18" />
    <Label Content="Date" Grid.Row="1"/>
    <DatePicker Grid.Row="2" />
    <Label Content="Note" Grid.Row="3" />
    <TextBox Grid.Row="4" Background="WhiteSmoke"/>
    <Separator Width="auto" Grid.Row="5" Margin="0 10 0 10" Background="Black"/>
    <TextBox Grid.Row="6" TextWrapping="Wrap" Background="WhiteSmoke" MinHeight="150" IsReadOnly="True" />
    <Label Content="Done" Grid.Row="7" />
    <CheckBox Name="doneCheck" Grid.Row="7" Margin="40 7 0 0" />

    <DockPanel LastChildFill="True">
        <Grid DockPanel.Dock="Bottom">
            <Button Content="Add" Name="SubmitButton" />
            <Button Content="Get Records" Name="GetRecsButton" />
        </Grid>
    </DockPanel>
</Grid>        

    <Grid.RowDefinitions>
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
    </Grid.RowDefinitions>

    <Label Content="Temp" Grid.Row="0" FontSize="18" />
    <Label Content="Date" Grid.Row="1"/>
    <DatePicker Grid.Row="2" />
    <Label Content="Note" Grid.Row="3" />
    <TextBox Grid.Row="4" Background="WhiteSmoke"/>
    <Separator Width="auto" Grid.Row="5" Margin="0 10 0 10" Background="Black"/>
    <TextBox Grid.Row="6" TextWrapping="Wrap" Background="WhiteSmoke" MinHeight="150" IsReadOnly="True" />
    <Label Content="Done" Grid.Row="7" />
    <CheckBox Name="doneCheck" Grid.Row="7" Margin="40 7 0 0" />

    <DockPanel LastChildFill="True">
        <Grid DockPanel.Dock="Bottom">
            <Button Content="Add" Name="SubmitButton" />
            <Button Content="Get Records" Name="GetRecsButton" />
        </Grid>
    </DockPanel>
</Grid>        


    <Grid.RowDefinitions>
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
    </Grid.RowDefinitions>

    <Label Content="Temp" Grid.Row="0" FontSize="18" />
    <Label Content="Date" Grid.Row="1"/>
    <DatePicker Grid.Row="2" />
    <Label Content="Note" Grid.Row="3" />
    <TextBox Grid.Row="4" Background="WhiteSmoke"/>
    <Separator Width="auto" Grid.Row="5" Margin="0 10 0 10" Background="Black"/>
    <TextBox Grid.Row="6" TextWrapping="Wrap" Background="WhiteSmoke" MinHeight="150" IsReadOnly="True" />
    <Label Content="Done" Grid.Row="7" />
    <CheckBox Name="doneCheck" Grid.Row="7" Margin="40 7 0 0" />

    <DockPanel LastChildFill="True">
        <Grid DockPanel.Dock="Bottom">
            <Button Content="Add" Name="SubmitButton" />
            <Button Content="Get Records" Name="GetRecsButton" />
        </Grid>
    </DockPanel>
</Grid>        

您正在将
DockPanel
放置在外部
网格的顶部
。您必须将其放置在底部:

    <Grid.RowDefinitions>
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
        <RowDefinition Height="auto" />
    </Grid.RowDefinitions>

    <Label Content="Temp" Grid.Row="0" FontSize="18" />
    <Label Content="Date" Grid.Row="1"/>
    <DatePicker Grid.Row="2" />
    <Label Content="Note" Grid.Row="3" />
    <TextBox Grid.Row="4" Background="WhiteSmoke"/>
    <Separator Width="auto" Grid.Row="5" Margin="0 10 0 10" Background="Black"/>
    <TextBox Grid.Row="6" TextWrapping="Wrap" Background="WhiteSmoke" MinHeight="150" IsReadOnly="True" />
    <Label Content="Done" Grid.Row="7" />
    <CheckBox Name="doneCheck" Grid.Row="7" Margin="40 7 0 0" />

    <DockPanel LastChildFill="True">
        <Grid DockPanel.Dock="Bottom">
            <Button Content="Add" Name="SubmitButton" />
            <Button Content="Get Records" Name="GetRecsButton" />
        </Grid>
    </DockPanel>
</Grid>        
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="*" />
    </Grid.RowDefinitions>

    <Label Content="Temp" Grid.Row="0" FontSize="18" />
    <Label Content="Date" Grid.Row="1"/>
    <DatePicker Grid.Row="2" />
    <Label Content="Note" Grid.Row="3" />
    <TextBox Grid.Row="4" Background="WhiteSmoke"/>
    <Separator Width="auto" Grid.Row="5" Margin="0 10 0 10" Background="Black"/>
    <TextBox Grid.Row="6" TextWrapping="Wrap" Background="WhiteSmoke" MinHeight="150" IsReadOnly="True" />
    <Label Content="Done" Grid.Row="7" />
    <CheckBox Name="doneCheck" Grid.Row="7" Margin="40 7 0 0" />

    <DockPanel LastChildFill="True" Grid.Row="8" VerticalAlignment="Bottom" >
        <Grid DockPanel.Dock="Bottom">
            <Button Content="Add" Name="SubmitButton" />
            <Button Content="Get Records" Name="GetRecsButton" />
        </Grid>
    </DockPanel>
</Grid> 

我看不到任何DockPanel对象。您可能需要从头开始阅读面板上的内容。停靠只在DockPanel中起作用,像Auto这样的参数是区分大小写的。起初我确实尝试过DockPanel,但也不起作用。我只是在发帖时忘了把它放回去,c&p的客户。我已经编辑了代码,其中显示了我的第一次尝试。这正确地将内部网格放在DockPanel的底部。在代码中,您指定希望DockPanel绘制在第0行(如果未指定Grid.row,则为默认值),该行位于外部网格的顶部。即使我给它Grid.row=“8”(或任何最后一个索引),它仍然不会停靠。它将位于底部,但不停靠,因此在调整窗口大小时,网格不会跟随