当我将带有负边距的元素放入ie时。使用OpacityMask边框,也会移动蒙版。
有没有人知道是否有办法将不透明蒙板应用于Border控件的视口而不管任何边距?
我想要实现的只是边框内容的中心线应该是完全可见的。我通过将边框内该元素的边距设置为负值来移动文本(在我的例子中是一个ItemsSource)。这产生了一种很酷的效果,其他线条也在不透明度下松动,因此中心线明显可见为当前线条。不幸的是,WPF也会移动我的Mask,因此当移动内容时,完全可见的线也会在Border控件中向上移动。
<Popup x:Name="PART_Popup"
VerticalOffset="{TemplateBinding TumblerVOffset}" IsOpen="{TemplateBinding IsTumblerVisible}"
PlacementTarget="{Binding RelativeSource={RelativeSource AncestorType={x:Type controls:TouchEditBox}}}"
MinWidth="{TemplateBinding TumblerWidth}" AllowsTransparency="True"
Height="{TemplateBinding TumblerHeight}" Placement="Relative">
<Border Background="{StaticResource TumblerBackground}" BorderBrush="White" BorderThickness="1">
<Border.OpacityMask>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<LinearGradientBrush.GradientStops>
<GradientStop Color="Transparent" Offset="0.0" />
<GradientStop Color="Black" Offset="0.4" />
<GradientStop Color="Black" Offset="0.6" />
<GradientStop Color="Transparent" Offset="1.0" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Border.OpacityMask>
<ItemsControl ItemsSource="{Binding TumblerHandler.Tumblers, RelativeSource={RelativeSource TemplatedParent}}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</Border>
</Popup>
答案 0 :(得分:0)
我找到了一个解决方案 - 在Container上设置ClipToBounds =“True”,它保存了Margin为负数的元素(在我的例子中是ItemsControl)。