为什么未在超链接上应用Setter属性

本文关键字:应用 Setter 属性 超链接 为什么 | 更新日期: 2023-09-27 18:29:51

我想为窗口中的所有Hyperlink设置(例如)FontSize。这是我的MainWindowXAML内容:

<Window.Resources>
    <Style TargetType="{x:Type Hyperlink}">
        <EventSetter Event="Click" Handler="Hyperlink_OnClick"/>
        <Setter Property="FontSize" Value="30"></Setter>
    </Style>
</Window.Resources>
<Grid>
    <RichTextBox>
        <FlowDocument>
            <Paragraph>
                something
                <Hyperlink>
                    <Hyperlink.Inlines>
                    clickable
                    </Hyperlink.Inlines>
                </Hyperlink> ...
            </Paragraph>
        </FlowDocument>
    </RichTextBox>
</Grid>

如果我明确地添加样式,它会起作用。。。(即将x:Key="HyperlinkStyle"添加到Style标签,并将Style="HyperlinkStyle"添加到Hyperlink

如何将样式自动设置为所有Hyperlink

编辑:

@keyboardP,@Anatoliy和@kmatyaszek-你没事。。。谢谢大家!最后,我将Style标记移到了<RichTextBox.Resources>属性中。

为什么未在超链接上应用Setter属性

您应该将OverridesDefaultStyle设置为true:

<RichTextBox OverridesDefaultStyle="True">

也可以将Hyperlink样式从Window资源移动到RichTextBox资源。