我使用像this这样的数据网格的复杂标头。但是我遇到了滚动条可见性的问题,它也占用了一个空间,因此宽度不能与网格完美匹配。我的网格在<Column.Definition>
<ColumnDefinition Width="{Binding ElementName=Column1, Path=ActualWidth}"/>
<ColumnDefinition Width="{Binding ElementName=Column2, Path=ActualWidth}"/>
<ColumnDefinition Width="{Binding ElementName=Column3, Path=ActualWidth}"/>
<ColumnDefinition Width="{Binding ElementName=Column4, Path=ActualWidth}"/>
<ColumnDefinition Width="{Binding ElementName=Column5, Path=ActualWidth}"/>
<ColumnDefinition Width="{Binding ElementName=Column6, Path=ActualWidth}"/>
<ColumnDefinition Width="{Binding ElementName=Column7, Path=ActualWidth}"/>
... till column 29
Anda我有Column.Definition
这样的数据网格
<DataGrid.Columns>
<mui:DataGridTextColumn x:Name="Column1" Width="50" Header="Segmen" Binding="{Binding B4R1,UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"/>
<mui:DataGridTextColumn x:Name="Column2" Width="50" Header="Fisik" Binding="{Binding B4R2,UpdateSourceTrigger=PropertyChanged , Mode=TwoWay}" />
<mui:DataGridTextColumn x:Name="Column3" Width="50" Header="Sensus" Binding="{Binding B4R3,UpdateSourceTrigger=PropertyChanged , Mode=TwoWay}"/>
<mui:DataGridTextColumn x:Name="Column4" Width="50" Header="Tempat Tinggal" Binding="{Binding B4R4,UpdateSourceTrigger=PropertyChanged , Mode=TwoWay}" />
<mui:DataGridTextColumn x:Name="Column5" Width="50" Header="Campuran" Binding="{Binding B4R5,UpdateSourceTrigger=PropertyChanged , Mode=TwoWay}" />
.... till column29
结果仍然如下:
如何使用scollbar像这样解决列的匹配宽度?
虽然我已经设置了宽度,但它仍然保留了空间..
我不知道滚动条已成功调整大小但空间仍然存在
答案 0 :(得分:0)
首先,您可以隐藏ScrollBar
的可见性,如下所示:
<DataGrid Name="dataGrid"
ScrollViewer.VerticalScrollBarVisibility="Hidden" ... />
其次,您可以为Width
设置固定的ScrollBar
:
<Window x:Class="MyClass.MainWindow"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
<DataGrid Name="dataGrid">
<DataGrid.Resources>
<sys:Double x:Key="{x:Static SystemParameters.VerticalScrollBarWidthKey}">20</sys:Double>
<sys:Double x:Key="{x:Static SystemParameters.HorizontalScrollBarHeightKey}">20</sys:Double>
</DataGrid.Resources>
...
</DataGrid>
第三,您可以设置ScrollBar
的样式:
<DataGrid.Resources>
<Style TargetType="{x:Type ScrollBar}">
<Style.Triggers>
<Trigger Property="Orientation" Value="Vertical">
<Setter Property="Width" Value="10" />
<Setter Property="MinWidth" Value="10" />
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.Resources>