XAML 如何在DatePicker中圆化弹出日历的角?[已关闭]

vhipe2zx  于 2023-08-01  发布在  其他
关注(0)|答案(1)|浏览(113)

**已关闭。**此问题需要debugging details。它目前不接受回答。

编辑问题以包括desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将有助于其他人回答这个问题。
28天前关闭。
Improve this question
我需要更改DatePicker组件的设计,但不创建新元素,因为我正在使用Fluent设计中的应用程序。
我已经编辑了DatePicker的默认模板。我设法更改了DatePicker的字段和按钮的设计。我能够绕场转,扣好角球。但是,我无法在DatePicker中修改弹出日历的模板。在编辑默认的DatePicker模板时,我没有看到日历,尽管它应该存在。
是否有一种方法可以仅通过编辑默认DatePicker模板而不创建新的自定义元素来更改DatePicker中弹出日历的设计?
Question in Screenshot

bn31dyow

bn31dyow1#

您可以将BorderCornerRadius(以及StackPanel上的MarginCalendarItemBackground设置为白色)一起添加,但我不确定这是否足够。它看起来如何:DatePicker with CornerRadius
如何完成:使用本网站的资源和模板:Calendar ControlTemplate Example
像这样:<Window.Resources>a lot of code...<Style x:Key="CalendarItemStyle" TargetType="{x:Type CalendarItem}">...和使用DatePicker像这样:

<DatePicker>
        <DatePicker.CalendarStyle>
            <Style TargetType="{x:Type Calendar}">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type Calendar}">
                            <Border
                                CornerRadius="10"
                                BorderThickness="1.5"
                                BorderBrush="Black"
                                >
                                <StackPanel x:Name="PART_Root"
                HorizontalAlignment="Center"
                                            Margin="1"
                >
                                    <CalendarItem x:Name="PART_CalendarItem"
                    Background="White"
                    Style="{TemplateBinding CalendarItemStyle}"/>
                                </StackPanel>
                            </Border>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </DatePicker.CalendarStyle>
    </DatePicker>

字符串

相关问题