【问题标题】:Style BasedOn breaks when x:key is added添加 x:key 时 Style BasedOn 中断
【发布时间】:2019-08-17 21:04:07
【问题描述】:

我有用户控件,它为 Telerik 的控件 RadTreeViewItem 定义自定义样式。问题是当我没有 x:key 时没有任何错误但是当我添加 x:key 属性时出现错误“The resource "RadTreeViewItemStyle" could not be resolved.

        <ResourceDictionary>
            <Style x:Key="MySuperGoodStyle" TargetType="telerik:RadTreeViewItem" BasedOn="{StaticResource RadTreeViewItemStyle}">
                <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
                <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
            </Style>
        </ResourceDictionary>

在运行时没有任何问题,样式按预期工作正常,因此看起来像是设计错误。

【问题讨论】:

    标签: c# wpf xaml telerik


    【解决方案1】:

    尝试在此之前添加:

      <Style TargetType="telerik:RadTreeViewItem" x:Key="RadTreeViewItemStyle">
            <Setter Property="FocusVisualStyle" Value="{StaticResource TreeviewFocusVisual}"/>
            <Setter Property="HorizontalContentAlignment" Value="Left"/>
            <Setter Property="VerticalContentAlignment" Value="Center"/>
            <Setter Property="BorderThickness" Value="1"/>
            <Setter Property="Padding" Value="1 4 5 4"/>
            <Setter Property="MinHeight" Value="24"/>
            <Setter Property="IsDropAllowed" Value="True"/>
            <Setter Property="IsEnabled" Value="True"/>
            <Setter Property="IsTabStop" Value="False"/>
            <Setter Property="telerik:DragDropManager.TouchDragTrigger" Value="TapAndHold"/>
            <Setter Property="KeyboardNavigation.TabNavigation" Value="Local"/>
            <Setter Property="Template" Value="{StaticResource TreeViewItemDefaultTemplate}"/>
            <Setter Property="ItemsPanel">
                <Setter.Value>
                    <ItemsPanelTemplate>
                        <telerik:TreeViewPanel VerticalAlignment="Bottom"/>
                    </ItemsPanelTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    

    并确保在您的标题中包含:

             xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
    

    【讨论】:

    • 感谢您的帮助,但它又给了我错误。无论如何,它看起来像错误修复本身可能是VS中的错误,重新启动后它被修复了。我会给你最好的答案,因为你试过了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-19
    • 1970-01-01
    • 1970-01-01
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多