DataGrid即使它只有 10 行,我怎樣才能填充空間并顯示垂直滾動條?
這是當前代碼:
<UserControl xmlns:Wpf="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf" x:Class="myclass.uccontrol"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
Focusable="True"
d:DesignHeight="10000" d:DesignWidth="1049">
<UserControl.Resources>
</UserControl.Resources>
<Grid VerticalAlignment="Top">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<DockPanel >
<DataGrid Name="dataGrid"
AutoGenerateColumns="False"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch">
<DataGrid.Columns>
<DataGridTextColumn Header = " Name" Binding = "{Binding Name, Mode=OneWay}" SortMemberPath="Name" />
<DataGridTextColumn Width="*" Header = " Date" Binding = "{Binding Date, StringFormat=\{0:d\}, Mode=OneWay}" SortMemberPath="DocumentDate" />
</DataGrid.Columns>
</DataGrid>
</DockPanel>
</Grid>
</UserControl>


uj5u.com熱心網友回復:
該<Grid VerticalAlignment="Top">宣告使父網格盡量占用盡可能少的垂直空間。洗掉VerticalAlignment="Top"宣告。
要顯示垂直滾動條,請使用VerticalScrollBarVisibility="Visible"并洗掉ScrollViewer.*屬性。
順便說一句,在提供的代碼中:
- 這
DockPanel是沒用的。 - 這
Grid是沒用的。但是我會保留它,也許還有其他東西,它與問題有關。 HorizontalAlignment="Stretch"并且VerticalAlignment="Stretch"沒用(Stretch是默認值)。- 您可以折疊一些空標簽。
代碼應該是這樣的:
<UserControl x:Class="myclass.uccontrol"
xmlns:Wpf="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
Focusable="True"
d:DesignHeight="10000" d:DesignWidth="1049">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<DataGrid Name="dataGrid"
AutoGenerateColumns="False"
VerticalScrollBarVisibility="Visible">
<DataGrid.Columns>
<DataGridTextColumn Header=" Name" Binding="{Binding Name, Mode=OneWay}" SortMemberPath="Name" />
<DataGridTextColumn Width="*" Header = " Date" Binding="{Binding Date, StringFormat=\{0:d\}, Mode=OneWay}" SortMemberPath="DocumentDate" />
</DataGrid.Columns>
</DataGrid>
</Grid>
</UserControl>
注意:資料網格的底部將是灰色的,您可以使用Background屬性進行更改。如果你想要空行,試試這個。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/444809.html
標籤:wpf
上一篇:在顯示/打開新表單時收到通知
下一篇:讓孩子們向上冒出一個事件
