c# - 以 DataGrid 作为左侧组件的 GridSplitter

标签 c# wpf datagrid gridsplitter

我在调整包含 DataGrid 的列的大小时遇到​​问题。当我为包含 DataGrid 的列创建更多空间时,DataGrid 实际上会缩小宽度。

尝试用谷歌搜索解决方案,但到目前为止没有找到任何有用的信息。

XAML:

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="45"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="0.7*"/>
        <ColumnDefinition Width="5"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="130"/>
    </Grid.ColumnDefinitions>

    <DataGrid 
        x:Name="DowloadedEpisodesDataGrid" 
        ItemsSource="{Binding DownloadedEpisodes, Mode=OneWay, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}" 
        Grid.Column="0"
        AutoGenerateColumns="False"
        Background="White">

        <DataGrid.Columns>
            <DataGridCheckBoxColumn Width="50" Header="Import" Binding="{Binding IsSelected}" />
            <DataGridTextColumn Width="Auto" Header="Downloaded episode" IsReadOnly="True" Binding="{Binding FileName}"/>
        </DataGrid.Columns>
    </DataGrid>

    <GridSplitter Grid.Column="1" Width="5" Visibility="Visible" ResizeDirection="Columns" VerticalAlignment="Stretch" />

    <views:EpisodeDetailsUserControl 
        x:Name="EpisodeDetailsUserControl" 
        DataContext="{Binding ElementName=DowloadedEpisodesDataGrid, Path=SelectedItem}" 
        Grid.Column="2"
        Grid.ColumnSpan="2"/>

调整大小之前:

enter image description here

调整大小后:

enter image description here

我想了解为什么默认行为是缩小 DataGrid,当然我非常想处理这个问题。

非常感谢。

最佳答案

您需要在 GridSplitter 上将 Horizo​​ntalAlignment 设置为 Stretch -

<GridSplitter Grid.Column="1"
              ResizeDirection="Columns"
              VerticalAlignment="Stretch" 
              HorizontalAlignment="Stretch" />

关于c# - 以 DataGrid 作为左侧组件的 GridSplitter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20455397/

相关文章:

c# - 一个简单的 Wpf MVVM 绑定(bind)问题

wpf - 如何从 XAML 中为样式中的控件指定工具提示?

c# - 是否可以模拟 .NET HttpWebResponse?

c# - ASP.Net MVC3 上的 HttpPost - "No parameterless constructor defined for this object"

wpf - 更新 UI 异步?

c# - wpf 形式的所有内容的圆角

wpf - 在WPF Datagrid中处理多个选定的行

javascript - 转换没有属性名称的 JSON

c# - 如何将二进制数组转换为word格式并使用c#将其显示到textarea

c# - 如何在绘制前调整网格模型的位置