C# WPF中的高级效果?
我一直试图完全在WPF中重新创建,但我遇到了一些问题:C# WPF中的高级效果?,c#,wpf,xaml,C#,Wpf,Xaml,我一直试图完全在WPF中重新创建,但我遇到了一些问题: 阴影。主元素上的阴影不会显示在填充内部-在WPF中使用DropShadowEffect时,会显示。到目前为止,我还没有找到解决这个问题的办法 背景图片-主要元素有一个轻微的图案,一个对角线。但在WPF中,我不能使用这样的背景图像。我可能只是错过了一些东西 主元素(顶部)中的轻微插入-不容易复制 所以不管怎样,我想我的问题是,我怎样才能在WPF中实现这些效果?希望这段代码将为您指明正确的方向: <Grid> <
- 阴影。主元素上的阴影不会显示在填充内部-在WPF中使用DropShadowEffect时,会显示。到目前为止,我还没有找到解决这个问题的办法
- 背景图片-主要元素有一个轻微的图案,一个对角线。但在WPF中,我不能使用这样的背景图像。我可能只是错过了一些东西
- 主元素(顶部)中的轻微插入-不容易复制
所以不管怎样,我想我的问题是,我怎样才能在WPF中实现这些效果?希望这段代码将为您指明正确的方向:
<Grid>
<Border x:Name="Blur"
BorderThickness="5"
CornerRadius="5"
BorderBrush="#7F000000">
<Border.Effect>
<BlurEffect Radius="8" />
</Border.Effect>
</Border>
<Border x:Name="Outter"
BorderBrush="#CCD3D3D3"
BorderThickness="1"
CornerRadius="5"
Margin="2">
<Border.Background>
<ImageBrush Viewbox="0,0,45,38"
ViewboxUnits="Absolute"
Viewport="0,0,45,38"
ViewportUnits="Absolute"
TileMode="Tile"
ImageSource="<SomeImageThatIsATileOfThePattern>"
Opacity="0.3"
Stretch="Fill" />
</Border.Background>
</Border>
<Border x:Name="Inner"
BorderThickness="0,1,0,0"
CornerRadius="5"
Margin="2,4,2,2"
BorderBrush="#7FD3D3D3" />
<ItemsControl Background="HotPink"
Margin="11"
Height="21" />
</Grid>
结果是:
[我使用了一个普通图像,只是为了显示重复。原始图像的大小是W50xH38-希望重复是明显的]
使用Viewbox和Viewport的值调整图像
当然,
ItemsControl
不应该有粉红色的背景,它的高度也不应该是一个常数,它是为了演示而做的。我不确定你说的阴影是什么,但是如果你不为阴影元素定义背景,它的子元素也会显示阴影。。。因此,只需为应用效果的元素定义一个背景,它将仅在外部可见。对角线图案不必是图像-看这里的插图可以通过画一条线来模拟。。。放大那张图片,你会看到那只是一条较暗的线,产生了这种效果。我记得你试图将阴影隐藏在半透明的矩形内。现在,你想显示阴影吗?不清楚。。。请发布代码和更多细节(评论)。哇,这太棒了!到目前为止,它工作得很好D一个问题:我如何防止模糊的边界在内部和外部流血?另外,我很难让阴影看起来也很逼真。