簡體   English   中英

網格中的網格未顯示 C# WPF 中的滾動條

[英]Grid in Grid not showing Scrollbar in C# WPF

我在另一個 Grid 中有一個 Grid 並將第二個 Grid 添加到 ScrollViewer 但看不到它的滾動條。 我添加的 ScrollViewer 網格的名稱為InfoGrid 我不明白為什么 ScrollViewer 不起作用。 你有什么替代方法可以建議我嗎? 我的所有 window 的 xaml 代碼:

<Window x:Class="ModelView.KillCardCheck"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Width="Auto" Height="Auto" SizeToContent="WidthAndHeight"
        ResizeMode="NoResize" Icon="pack://application:,,,/Resources/image/ffdc_gui.png"
        xmlns:lex="http://schemas.root-project.org/xaml/presentation" Closing="WindowClosing">

    <Grid Style="{DynamicResource GridStyle}" HorizontalAlignment="Stretch" 
VerticalAlignment="Stretch">
        <Grid.RowDefinitions>
            <RowDefinition Height="12"/>
            <RowDefinition/>
            <RowDefinition/>
            <RowDefinition/>
            <RowDefinition Height="40"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="11"/>
            <ColumnDefinition Width="109"/>
            <ColumnDefinition Width="250"/>
            <ColumnDefinition Width="100"/>
        </Grid.ColumnDefinitions>
        <DataGrid Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="2" Style="{DynamicResource {x:Type DataGrid}}"
                      AutoGenerateColumns="False" CanUserSortColumns="False"  CanUserAddRows="False"
                      Margin="4,4,4,4" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" RowHeight="25" Name="dgKillCardChecks" 
                                  SelectionMode="Single" BorderThickness="1,1,1,0">
            <DataGrid.Columns>
                <DataGridTextColumn Binding="{Binding Number}" 
                                Width="30" IsReadOnly="True">
                </DataGridTextColumn>
                <DataGridTemplateColumn Header="{lex:LocText Key=check_list, Dict=language, Assembly=FfdcLocalization}" Width="*" >
                    <DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <CheckBox Name="chkCheckList" Content="{Binding CheckItem}"
                                                  Click="CheckListCheckBoxOnClick"
                                              Tag="{Binding Index}"
                                                  IsChecked="{Binding Path=CheckStatus, UpdateSourceTrigger=PropertyChanged}"
                                                  IsHitTestVisible="{Binding Enabled}" />
                        </DataTemplate>
                    </DataGridTemplateColumn.CellTemplate>
                </DataGridTemplateColumn>

            </DataGrid.Columns>

        </DataGrid>
        <ScrollViewer VerticalScrollBarVisibility="Visible">
            <Grid Style="{DynamicResource GridStyle}" Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="3" Margin="4,4,4,4" Name="InfoGrid" >
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            </Grid>
         </ScrollViewer>
        <TextBlock Name="descriptionBlock" TextWrapping="Wrap" Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="3" Margin="4,4,4,4"></TextBlock>
        <Button Style="{DynamicResource {x:Type Button}}" Grid.Row="4" Grid.Column="3" Grid.ColumnSpan="1" 
                    x:Name="btnQuit" MaxHeight="30" Margin="2,4,0,6" MaxWidth="120" MinWidth="80"
                    Content="{lex:LocText Key=close, Dict=language, Assembly=FfdcLocalization}"
                    VerticalContentAlignment="Center" MinHeight="30" VerticalAlignment="Center" HorizontalAlignment="Left" Click="CloseClick"/>
        <Button Style="{DynamicResource {x:Type Button}}" Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="2" 
                    x:Name="btnClear" MaxHeight="30" Margin="2,4,0,6" MaxWidth="200" MinWidth="80"
                    Content="{lex:LocText Key=clear_killcard, Dict=language, Assembly=FfdcLocalization}"
                    VerticalContentAlignment="Center" MinHeight="30" VerticalAlignment="Center" HorizontalAlignment="Right" Click="ClearKillCardClick"/>
    </Grid>

</Window>

您制作的 ScrollViewer 沒有設置 grid.Row,而是將其放在其中的網格上。 這沒有多大意義,因為網格(“信息網格”)位於 ScrollViewer 內部,因此它的父級是 ScrollViewer。 您可能想嘗試設置 ScrollViewer 行和列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM