ScrollViewer无法在groupbox中运行?

时间:2014-05-29 11:15:31

标签: c# wpf scrollbar groupbox

大家好我是c#wpf的新手。我有一个问题,我想在我的ScrollViewer中加入Groupbox,但我的代码无效:

<GroupBox 
           Margin="10,10,0,0"
            Grid.Row="0"
            Grid.ColumnSpan="3"
            Height="150"           
            >
                    <ScrollViewer>
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="*" />
                    <RowDefinition Height="*"/>
                    <RowDefinition Height="*"/>
                    <RowDefinition Height="*"/>

                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="140"/>
                    <ColumnDefinition Width="120"/>
                    <ColumnDefinition Width="100"/>
                </Grid.ColumnDefinitions>

                <Label 
                    Margin="0,6,0,0"
                    Content="SSID"
                    Grid.Row="0"
                    >      
                </Label>

                <TextBox
                      Margin="0,6,0,6"
                    Grid.Column="1">

                </TextBox>

                <Label 
                     Margin="0,6,0,0"
                    Content="(1024)"
                    Grid.Column="2"
                    >
                </Label>
                <Label 
                     Margin="0,6,0,0"
                    Content="Authentication Mode"
                    Grid.Column="0"

                    Grid.Row="1"
                    >
                </Label>
                <ComboBox 
                        Margin="0,6,0,6" 
                Grid.Row="1"
                Grid.Column="1"
                ItemsSource="{Binding ACAvailableSecurityTypes}"
                SelectedItem="{Binding ACSelectedSecurityType}"
                />
                <Label

                      Margin="0,6,0,0"
                    Grid.Row="2"
                       Grid.Column="0"
                       Content="VLAN"
                      />

                <TextBox
                      Margin="0,6,0,6"
                    Grid.Row="2"
                    Grid.Column="1"
                    />

                <Label Grid.Row="2"
                       Grid.Column="2"
                    Content="(1-4094)"/>

                <Button
                    Grid.Row="3"
                    Grid.Column="2"
                    Content="Add SSID"
                    HorizontalAlignment="Left"
                    Width="70"
                    Style="{StaticResource AppButtons}"/>
            </Grid>
                    </ScrollViewer>
                </GroupBox>

任何帮助都会非常值得赞赏。谢谢

3 个答案:

答案 0 :(得分:3)

为了查看您的滚动条,您的滚动查看器的高度应该低于您的组框,请执行此操作,您可以看到滚动条,设置高度和<强> VerticalScrollBarVisibility

 <ScrollViewer Height="100" VerticalScrollBarVisibility="Auto">
            <GroupBox 
           Margin="10,10,0,0"
            Grid.Row="0"
            Grid.ColumnSpan="3"
            Height="150"           
            >
           ......

        </GroupBox>
 </ScrollViewer>

答案 1 :(得分:1)

ScrollViewer放在GroupBox之外,而不是放在

之内
<ScrollViewer>
    <GroupBox Margin="10,10,0,0"
              Grid.Row="0"
              Grid.ColumnSpan="3"
              Height="150" >

        ...
        ...

    </GroupBox>
</ScrollViewer>

答案 2 :(得分:1)

GroupBox 放在 ScrollViewer 内会导致 GroupBox 标题在滚动时消失。

我解决了这个问题,通过将 ScollViewerGroupBox 设置为匹配 Height ScrollViewer,将 GroupBox 保留在 Height 中:

<GroupBox Header="Testing 123">
    <ScrollViewer Height="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=GroupBox}, Path=ActualHeight}">
        <Image .../>
    </ScrollViewer>
</GroupBox>