[英]Horizontal ScrollBar is never visible
我需要一些幫助,因為我無法使用數據網格中的水平滾動條。
我有一個TabControl,並且已經向TabItem中添加了DataGrid,問題是即使我設置了ScrollViewer.HorizontalScrollBarVisibility="Visible"
或將DataGrid放入網格中,Horizontal ScrollBar也不可見。
<TabControl Margin="6,0,6,0" >
<TabItem>
<DataGrid ItemsSource="{Binding}" AutoGenerateColumns="False" IsReadOnly="True" HorizontalAlignment="Center" VerticalAlignment="Center" SelectionMode="Extended">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding BlaBla}" Header="BlaBlaBla" />
...
</DataGrid.Columns>
</DataGrid>
</TabItem>
...
有人可以幫我指出問題嗎? 謝謝。
編輯:
這是重現相同問題的示例代碼,垂直滾動條顯示正確,但水平滾動條顯示不正確
XAML:
<Window x:Class="BlaBla.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Grid>
<DataGrid Name="datagrid" ItemsSource="{Binding}" AutoGenerateColumns="False" IsReadOnly="True" HorizontalAlignment="Center" VerticalAlignment="Center" >
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Date}" Header="Date" />
<DataGridTextColumn Binding="{Binding Path=User}" Header="User"/>
</DataGrid.Columns>
</DataGrid>
</Grid>
</Window>
后台代碼:
datagrid.DataContext = this.SomeDataTable;
如果我在控件周圍進行<ScrollViewer HorizontalScrollBarVisibility="Visible">
,則此操作無效
那很簡單,添加一個ScrollViewer並設置Auto forHorizontalScrollBarVisibility。 嘗試這個。
<Grid>
<TabControl>
<TabItem Header="Hello">
<ScrollViewer HorizontalScrollBarVisibility="Auto">
<DataGrid >
<DataGrid.Columns>
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
<DataGridTextColumn Header="Name" />
</DataGrid.Columns>
</DataGrid>
</ScrollViewer>
</TabItem>
<TabItem Header="Hello2">
</TabItem>
<TabItem Header="Hello3">
</TabItem>
</TabControl>
</Grid>
好的,我已經解決了這個問題,但是我不知道為什么會有它的行為。 我必須將滾動查看器的樣式放在父窗口的資源上,否則它不會顯示水平滾動條,而只會顯示垂直滾動條。
如果有人知道為什么我會很高興知道這個解釋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.