You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

UWP中无x:Key的TimePickerFlyoutPresenter样式引用异常问题

解决TimePickerFlyoutPresenter样式在独立ResourceDictionary中不生效的问题
  • 检查独立ResourceDictionary的构建操作
    右键你的独立ResourceDictionary文件(比如TimePickerStyles.xaml),选择「属性」,确保Build Action设置为Page,错误的构建操作(比如Resource)会导致资源无法被正确加载。

  • 确认Application.Resources中的合并写法
    必须通过MergedDictionaries来合并外部字典,路径要和文件实际位置匹配,示例:

    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <!-- 替换为你的文件实际路径 -->
                <ResourceDictionary Source="Assets/Styles/TimePickerFlyoutStyles.xaml"/>
            </ResourceDictionary.MergedDictionaries>
            <!-- 应用级本地资源写在这里,不要直接放在MergedDictionaries外部 -->
        </ResourceDictionary>
    </Application.Resources>
    
  • 验证独立字典中的样式定义
    确保样式未设置x:Key,且TargetType完全匹配(大小写、命名空间均需一致),示例:

    <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
        <Style TargetType="TimePickerFlyoutPresenter">
            <!-- 你的样式设置 -->
            <Setter Property="Foreground" Value="#FF333333"/>
            <Setter Property="Background" Value="#FFFFFFFF"/>
        </Style>
    </ResourceDictionary>
    
  • 排查样式覆盖问题
    页面级或控件级资源中如果定义了同TargetType的样式,会优先覆盖应用级默认样式,检查你的页面和控件资源,是否有重复定义TimePickerFlyoutPresenter的样式。

  • 类库中的资源路径处理
    如果独立ResourceDictionary在类库项目中,Source需要使用完整的pack URI格式,示例:

    <ResourceDictionary Source="pack://application:,,,/YourClassLibraryName;component/Styles/TimePickerFlyoutStyles.xaml"/>
    

    替换YourClassLibraryName为你的类库名称,路径对应类库中的文件位置。

内容的提问来源于stack exchange,提问作者Denys

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 16:52:06