当资源在 C# 后端声明为类时,如何访问该资源?

2023-11-29

我的主要资源如下:

<?xml version="1.0" encoding="utf-8"?>
<Application xmlns:converters="clr-namespace:Japanese" 
             xmlns="http://xamarin.com/schemas/2014/forms" 
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
             x:Class="Japanese.App">
    <Application.Resources>
        <ResourceDictionary>
        <ResourceDictionary Source="/Resources/DetailRes.xaml" />

我有这个资源文件:

<?xml version="1.0" encoding="UTF-8" ?>
<ResourceDictionary xmlns="http://xamarin.com/schemas/2014/forms"
                    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                    x:Class="Japanese.DetailRes">
    <Style x:Key="DetailLabel" TargetType="Label">
        <Setter Property="FontSize">
            <Setter.Value>
                <OnPlatform x:TypeArguments="x:Double">
                    <On Platform="iOS" Value="35" />
                    <On Platform="Android" Value="35" />
                </OnPlatform>
            </Setter.Value>
        </Setter>
        <Setter Property="VerticalOptions" Value="Center" />
        <Setter Property="LineBreakMode" Value="WordWrap" />
        <Setter Property="HorizontalTextAlignment" Value="Center" />
    </Style>
</ResourceDictionary>

在 XAML 中我像这样访问它:

<t:BaseFrameButtonTemplate xmlns="http://xamarin.com/schemas/2014/forms" 
                  xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
                  xmlns:t="clr-namespace:Japanese.Templates" 
                  xmlns:local="clr-namespace:Japanese;assembly=Japanese" 
                  x:Class="Japanese.Templates.RoundButtonText" x:Name="this" >

    <Label Text="{Binding Text, Source={x:Reference this}}" 
           Style="{StaticResource DetailRes}" 
           x:Name="Label" />
</t:BaseFrameButtonTemplate>

我想在 C# 中访问它,但不知道该怎么做。我尝试了这个,但没有找到资源:

Label.Style = (Style)Application.Current.Resources["DetailRes"];

您可以使用TryGetValue从您那里获得单曲ResourceDictionary:

if (Application.Current.Resources.TryGetValue("DetailLabel", out object style))
{
    someLabel.Style = (Style)style;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当资源在 C# 后端声明为类时,如何访问该资源? 的相关文章

  • 使用仪器分配时 iOS 应用程序冻结

    当我想使用 Instruments Allocation 来分析应用程序的内存使用情况时 它在启动后立即冻结 它总是停留在启动屏幕 这是一个 Xamarin forms 应用程序 这是屏幕截图 其他信息 如果我创建一个新项目 然后使用 In
  • NameResolutionFailure 与 ConnectFailure 问题

    这是一个相当奇怪的问题 但仍然是一个非常糟糕的问题 当用户在没有互联网的情况下进入我们的应用程序时 我们会返回一个NameResolutionFailure作为尝试通过以下方式进行 API 调用的错误消息HttpClient 好吧 没关系
  • iOS 更新到 15 后列表视图顶部出现奇怪的空间

    我在用着 Xamarin Froms 5 0 0 24125 Xcode 版本 13 0 13A233 Visual Studio for Mac 社区版本 8 10 9 内部版本 3 NuGet版本 5 9 0 7134 Xamarin
  • 最新 Xamarin Visual Studio 2017 中缺少模板

    我想开始跨移动应用程序开发 因为我听说如果您擅长 C Xamarin 是一个很好的框架 因此 我下载了安装了 Xamarin 模块的最新 Visual Studio 2017 为了学习 我获得了 Xamarin 的 Udemy 课程和它是最
  • 如何在android上使用xamarin表单执行脚本

    我正在尝试在 Android Mono 上使用 Xamarin Forms 运行 C 脚本 当我运行脚本时 我收到错误 System IO FileNotFoundException 找不到文件 mscorlib dll 这是我试图执行的代
  • 如何在xamarin表单共享项目中检查互联网连接

    如何检查 Xamarin 表单共享项目中的 Internet 是否可用 我们可以在PCL项目中使用交叉连接插件 我们可以在共享项目中使用相同的插件吗 交叉连接插件已被弃用 取而代之的是Xamarin Essentials https git
  • 带 Prism 的表单:应用程序窗口预计有一个根 VC

    我刚刚在我的新应用程序中实现了 Prism 库 并且正在使用 NavigationService 它在 Android 上运行良好 但是当我尝试在联网的 Mac 上调试我的 Xamarin Forms iOS 应用程序时 我的 Main 方
  • 如何在 xamarin.ios 中全局隐藏导航栏后退按钮标题

    我在 AppDelegate 中使用了这段代码 UIBarButtonItem Appearance SetBackButtonTitlePositionAdjustment new UIOffset 100 60 UIBarMetrics
  • 无法再在模拟器或设备上调试

    直到今天早上 我才能在物理设备和模拟器上调试我的 Xamarin iOS 应用程序 我认为这与最近的iOS更新有关 当我尝试部署到我的物理设备 iPad 时 我现在收到以下消息 错误 HE0003 无法加载框架 IBFoundation 路
  • 录制视频/音频时播放系统声音

    当我开始录制视频时 我试图按照苹果的要求播放 嘟嘟 声 我通过 SO 和其他来源发现 当您有音频输入而没有进行某些配置时 您无法播放声音 这是我尝试的配置方法 private void SetupAudio beepSound AssetB
  • 使用 xamarin 和 c# 更改 android 上的cultureinfo

    我调用自定义方法来动态地将当前文化信息切换为法语 fr 像这样 但在调用该方法后 我的 Android 应用程序仍然使用默认区域性 en 但在调试模式下 区域性似乎没问题 我的文件夹没问题 我两者都有 并且字符串值已配置 文件夹 resou
  • XAMARIN - 添加来自 youtube 的视频

    我搜索如何从 youtube 添加视频的信息 例如 我想从一些 YouTube 链接添加视频 我认为它应该在网络视图中 但我需要一些详细信息 因为我找不到有关我的问题的任何信息 您可以使用 webview 播放 youtube 视频 str
  • 不支持使用 JDK 版本“11.0.1”进行构建。请安装 JDK 版本 `1.8.0`

    我已经下载了 Visual Studio for Mac 并尝试开始学习 Xamarin iOS 和 Android 问题是当我尝试运行 android 项目时出现以下错误 Building with JDK Version 11 0 1
  • Xamarin、Autofac、NavigationService 和 BeginLifetimeScope

    关于带有 autofac 的生命周期范围以及何时在 xamarin 应用程序中使用它们的初学者问题 正如这篇文章中提到的 https nblumhardt com 2011 01 an autofac lifetime primer htt
  • 在 Xamarin.Forms 上的图像顶部叠加标签、列表和按钮

    我想制作一个页面 其中有一张图片 基本上页面上的其他所有内容都位于图像之上 与此类似的东西 XAML 代码如下
  • GetAsync 请求返回空内容

    我想知道为什么当我在邮递员中尝试它有数据返回时它返回 null 这是我的代码 public async Task
  • 如何在 Windows 中压缩 apk 文件

    我已经签署并打包了 Xamarin 应用程序因此使用 Visual Studio 创建了 apk 文件 如何在 Windows 中压缩对齐此文件 确保您拥有Android SDK 构建工具安装然后检查你的SDK安装在哪里我的安装在哪里C P
  • xaml.cs 文件上的 InitializeComponent() 出现错误

    有时我会收到一个红色错误 内容如下 InitializeComponent 在当前上下文中不存在 以及我的其他变量 xaml受约束的x Name The x ClassXaml 文件中的名称空间和类名确实对应于我的xaml cs file
  • Xamarin Forms:无法添加 RESX 进行全球化

    尝试按照以下方式使用 Xamarin 上的全球化功能guide https developer xamarin com guides xamarin forms advanced localization 但是找不到Misc类别也不Reso
  • 如何正确绑定和更新 Xamarin.Forms ListView?

    使用 MVVM 模式 我有一个模型 ViewModel 和视图 其中包含一个 ListView ListView 绑定到 ViewModel 的成员 该成员是 Model 类的 ObservableCollection 我可以使初始显示的绑

随机推荐