【问题标题】:Controls appearing beneath GridSplitter出现在 GridSplitter 下方的控件
【发布时间】:2014-07-02 21:01:57
【问题描述】:

我的应用中有一个 GridSplitter,ListView 控件总是出现在 Splitter 下方。如何使 ListView 控件适合 GridSplitter 左侧的边界,而不强制 ListView 具有固定宽度?

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="300" />
        <ColumnDefinition Width="2*" />
    </Grid.ColumnDefinitions>

    <Grid Margin="0, 25, 0, 22">
        <ScrollViewer ScrollViewer.CanContentScroll="True" VerticalScrollBarVisibility="Auto">
            <ListView x:Name="list" ItemsSource="{Binding Messages}" Grid.Column="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
                <DataTemplate>
                    <ListViewItem>
                        <TextBlock Text="sd" />
                    </ListViewItem>
                </DataTemplate>
            </ListView>
        </ScrollViewer>
    </Grid>

    <GridSplitter Width="5" HorizontalAlignment="Right" VerticalAlignment="Stretch" Background="#FFCFE5F0" Margin="0, 25, 0, 22" />
</Grid>

【问题讨论】:

    标签: c# .net wpf


    【解决方案1】:

    将它们放在列中

    <Grid Margin="0, 25, 0, 22" Grid.Column = 0 
    <GridSplitter Grid.Column = 1 
    

    【讨论】:

    • 完美。谢谢@Blam。
    【解决方案2】:

    GridSplitter 添加到相应的列中。试试这个:

    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="300" />
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="2*" />
        </Grid.ColumnDefinitions>
        <Grid>
            <ScrollViewer ScrollViewer.CanContentScroll="True" VerticalScrollBarVisibility="Auto">
                <ListView x:Name="list" ItemsSource="{Binding Items}" Grid.Column="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
                    <DataTemplate>
                        <ListViewItem>
                            <TextBlock Text="sd" />
                        </ListViewItem>
                    </DataTemplate>
                </ListView>
            </ScrollViewer>
        </Grid>
        <GridSplitter Grid.Column="1" Width="5" HorizontalAlignment="Right" VerticalAlignment="Stretch" Background="#FFCFE5F0" Margin="0, 25, 0, 22" />
    </Grid>
    

    【讨论】:

    • 完美。谢谢@Sheridan。
    猜你喜欢
    • 1970-01-01
    • 2017-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多