看看这个!
我真的需要摆脱这个!
看看蜕变!
<ListView Name="list" BorderThickness="0">
我该如何解决? 这个差距不仅发生在滚动条上,也发生在项目中,有或没有任何视图。
答案 0 :(得分:8)
在Template
中看起来像是一个问题,很可能是内部控件的一个属性,它没有绑定到ListBox向您公开的任何属性。
由Vercas编辑:我发现了问题
这是ListView
:
<ControlTemplate x:Key="ListView" TargetType="ListBox">
<Border Background="{TemplateBinding Control.Background}" BorderBrush="{TemplateBinding Control.BorderBrush}" BorderThickness="{TemplateBinding Control.BorderThickness}" Name="Bd" Padding="1" SnapsToDevicePixels="True">
<ScrollViewer Focusable="False" Padding="{TemplateBinding Control.Padding}">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding UIElement.SnapsToDevicePixels}" />
</ScrollViewer>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="UIElement.IsEnabled" Value="False">
<Setter Property="Border.Background" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}" />
</Trigger>
<Trigger Property="ItemsControl.IsGrouping" Value="True">
<Setter Property="ScrollViewer.CanContentScroll" Value="False" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
只需将边框的Padding
更改为0,即可完成
如果您不想打扰找到该属性,结果如下。
<ControlTemplate x:Key="ListView" TargetType="ListBox">
<Border Background="{TemplateBinding Control.Background}" BorderBrush="{TemplateBinding Control.BorderBrush}" BorderThickness="{TemplateBinding Control.BorderThickness}" Name="Bd" Padding="0" SnapsToDevicePixels="True">
<ScrollViewer Focusable="False" Padding="{TemplateBinding Control.Padding}">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding UIElement.SnapsToDevicePixels}" />
</ScrollViewer>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="UIElement.IsEnabled" Value="False">
<Setter Property="Border.Background" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}" />
</Trigger>
<Trigger Property="ItemsControl.IsGrouping" Value="True">
<Setter Property="ScrollViewer.CanContentScroll" Value="False" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
不要忘记将此模板添加到ListView
!
答案 1 :(得分:0)
如果你有它,这将更容易修复Blend。如果没有免费试用。您必须为该列表中使用的scrollviewer生成控件模板的副本。从那里,您可以编辑ScrollBar的模板。
一旦你到达它,滚动条模板就会变成几个级别的模板。 ListView模板&gt; ItemsPresenter(在这种情况下为Wrap Panel)模板&gt; ScrollViewer模板&gt;滚动条模板。