WPF滚动条位置
TabItem中有一个Stackpanel,它是TabControl的一部分。当东西添加到StackPanel时,我会出现一个自定义的垂直滚动条。当前它出现在堆栈面板的TabItem控件“顶部”。我想将滚动条的位置移动到TabControl之外。我试着用边距做一些事情,但是当滚动条被推到TabControl的边缘之外时,它就被剪掉了,我再怎么摆弄zindex也没有取得任何成功。任何帮助都将不胜感激莱夫WPF滚动条位置,wpf,location,scrollbar,stackpanel,Wpf,Location,Scrollbar,Stackpanel,TabItem中有一个Stackpanel,它是TabControl的一部分。当东西添加到StackPanel时,我会出现一个自定义的垂直滚动条。当前它出现在堆栈面板的TabItem控件“顶部”。我想将滚动条的位置移动到TabControl之外。我试着用边距做一些事情,但是当滚动条被推到TabControl的边缘之外时,它就被剪掉了,我再怎么摆弄zindex也没有取得任何成功。任何帮助都将不胜感激莱夫 <TabItem Name="tabItem1" Backgro
<TabItem Name="tabItem1" Background="{x:Null}" BorderBrush="#FF48D6EE" IsSelected="True">
<TabItem.Template>
<ControlTemplate TargetType="{x:Type TabItem}">
<Grid>
<Border Name="Tab1" Margin="0,0,0,0" BorderBrush="#FF002648" BorderThickness="1,0,1,1" CornerRadius="0,0,3,3">
<Border.Effect>
<DropShadowEffect ShadowDepth="0" Color="#FF3Ed3F4" Opacity=".5" BlurRadius="2"/>
</Border.Effect>
</Border>
<HeaderedContentControl Name="TabHeaderText"
TextBlock.FontFamily="Aharoni"
TextBlock.FontWeight="Bold"
TextBlock.Foreground="#FF214c6d"
TextBlock.FontSize="18"
Header="Tab1"
Margin="10,1,10,0"
VerticalAlignment="Center"
HorizontalAlignment="Center"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="Tab1" Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint=".5,0" EndPoint=".5,1">
<GradientStop Color="#FF000a13" Offset="0" />
<GradientStop Color="#FF06335c" Offset="0.5" />
<GradientStop Color="#FF33bbdb" Offset="1" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter TargetName="Tab1" Property="Effect">
<Setter.Value>
<DropShadowEffect ShadowDepth="0" Color="#FF3ccbee" Opacity="1" BlurRadius="5"/>
</Setter.Value>
</Setter>
<Setter TargetName="Tab1" Property="BorderBrush" Value="#FF48d6ed"/>
<Setter TargetName="Tab1" Property="BorderThickness" Value="1,0,1,1" />
<Setter TargetName="Tab1" Property="Header">
<Setter.Value>
<custom:OutlinedText FontSize="18"
FontFamily="Aharoni"
FontWeight="ExtraBold"
Fill="Black"
Stroke="#ff3bb1db"
StrokeThickness=".75"
Text="Tab1"/>
</Setter.Value>
</Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</TabItem.Template>
<ScrollViewer HorizontalScrollBarVisibility="Disabled"
VerticalScrollBarVisibility="Auto"
Template="{StaticResource ScrollViewerControlTemplate}">
<StackPanel Name="panelTab1" HorizontalAlignment="Left" VerticalAlignment="Top"/>
</ScrollViewer>
</TabItem>
我们遇到了类似的问题。我们发现,WPF在裁剪时不会绘制具有负边距的对象。当包含TabItem控件的其中一个元素设置了MinHeight,并且窗口缩小到MinHeight以下时,剪裁开始发挥作用。默认情况下,滚动条为零件垂直滚动条使用负边距 解决方案是确保没有在任何可能包含TabItem的容器上设置MinHeight。如果需要使用最小高度,请在顶层视图中进行设置 Snoop工具对于调试WPF布局问题非常有用