我试图在列表视图数据模板内创建一个停靠面板,该面板占据其父选项卡控件的所有可用宽度。我首先将我的 XAML 基于这个问题,从而得出以下结论:
<TabControl x:Name="tabControl" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<TabItem Header="Clipboard Buffer">
<ListView Name="clipboardListView" ScrollViewer.CanContentScroll="True">
<ListView.ItemTemplate>
<DataTemplate>
<Border BorderThickness="2" BorderBrush="Black" CornerRadius="2,2,2,2">
<DockPanel Background="AliceBlue" Width="{Binding ActualWidth, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TabControl}}}">
<TextBlock Text="{Binding Text}" DockPanel.Dock="Top" />
</DockPanel>
</Border>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</TabItem>
...
Run Code Online (Sandbox Code Playgroud)
这几乎可以工作,但是停靠面板似乎总是比选项卡控件中的可用空间宽一点,如您在此处看到的。
我可以使用滚动条移动并看到我的停靠面板的末尾,正如人们所期望的那样......
但是,如果我尝试重新调整窗体大小,则停靠面板仍略大于选项卡控件中的可用空间量。
我在这里缺少什么?如何使我的停靠面板保持在其父选项卡控件的宽度内?
尝试这个:
<TabControl x:Name="tabControl" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<TabItem Header="Clipboard Buffer">
<ListView Name="clipboardListView" ScrollViewer.CanContentScroll="True" HorizontalContentAlignment="Stretch">
<ListView.ItemTemplate>
<DataTemplate>
<Border BorderThickness="2" BorderBrush="Black" CornerRadius="2,2,2,2" >
<DockPanel Background="AliceBlue" >
<TextBlock Text="asdfasdkfhkasdfkasdgfkjhdgfkuwegyfkwegfbkuweyfuksyadukfykweugbyfu" DockPanel.Dock="Top" />
</DockPanel>
</Border>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</TabItem>
</TabControl>
Run Code Online (Sandbox Code Playgroud)
注意HorizontalContentAlignment="Stretch"ListView中的
| 归档时间: |
|
| 查看次数: |
2595 次 |
| 最近记录: |