wpf ListViewItem 怎么设置圆角并有阴影效果,请给出 详细的 xaml代码

以下是一段详细的 XAML 代码示例,展示了如何为 WPF 的 ListViewItem 设置圆角和阴影效果:

<ListView>
    <ListView.ItemContainerStyle>
        <Style TargetType="ListViewItem">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="ListViewItem">
                        <Border Background="#EFEFEF" CornerRadius="10" Margin="5"
                                BorderBrush="#CCCCCC" BorderThickness="1">
                            <Grid>
                                <!-- 设置阴影效果 -->
                                <Border CornerRadius="10" Background="White"
                                        BorderBrush="Transparent" BorderThickness="1"
                                        Margin="3"
                                        Effect="{DynamicResource ShadowEffect}">
                                    <ContentPresenter/>
                                </Border>
                            </Grid>
                        </Border>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </ListView.ItemContainerStyle>
    <ListViewItem Content="Item 1"/>
    <ListViewItem Content="Item 2"/>
    <ListViewItem Content="Item 3"/>
</ListView>

在上述代码中,我们为 ListViewItem 定义了一个自定义的 ItemContainerStyle。在这个样式中,我们使用 ControlTemplate 来修改 ListViewItem 的外观。

在 ControlTemplate 内部,我们将 ListViewItem 包装在一个 Border 中,并设置 Background、CornerRadius、Margin、BorderBrush 和 BorderThickness 来实现圆角和边框效果。

然后,在 Border 内部,我们使用了一个 Grid 和另外一个 Border 来创建阴影效果。将 ContentPresenter 放置在内部 Border 中,这样 ListViewItem 的内容就会显示在这个 Border 内。

你还可以通过定义一个效果资源来实现阴影效果,如上述代码中的 ShadowEffect。你可以调整效果的属性以适应你的需求。

posted @   simadi  阅读(239)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2022-09-28 pyside 学习目标
2021-09-28 c#雷达扫描动画
2020-09-28 思科、华为交换机OID获取
2016-09-28 微信小程序开发者工具集合包
点击右上角即可分享
微信分享提示