【问题标题】:How to add ResourceDictionary in Phone class library project and access it如何在 Phone 类库项目中添加 ResourceDictionary 并访问它
【发布时间】:2014-02-10 07:11:49
【问题描述】:

我正在做一个项目,我有一个引用库项目的子项目。

在我的库项目(电话类库)中,我如何创建 ResourceDictionary.xaml 我需要添加一些样式并在 xaml 文件和 .cs 文件中使用它。

我需要在我的 xaml 文件以及 .cs 文件中访问 ResourceDictionary.xaml 中的样式,该怎么做?

【问题讨论】:

    标签: c# wpf xaml windows-phone-8 resourcedictionary


    【解决方案1】:

    在根文件夹中创建一个Generic 的文件夹,并将您的资源文件放在那里...

    在 XAML 中访问它

      <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="Generic.xaml" />
      </ResourceDictionary.MergedDictionaries>
    

    <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="/AssembleName;component/Generic.xaml" />
    </ResourceDictionary.MergedDictionaries>
    

    在 .cs 中访问它

    new URI(pack://application:,,,/AssembleName;component/Generic.xaml)
    

    【讨论】:

    • 首先如何创建 ResourceDictionary.xaml,因为在 Phone 类库项目中默认没有这样的 xml
    • 你在吗?你能帮帮我吗?
    • 没有直接的方法可以为项目创建资源文件。我所做的是创建一个 UserControl 并删除 cs 文件。所以这将是我的资源文件...
    • 你能告诉我怎么做吗?因为我在尝试添加资源时创建了用户控制 .XAML 文件,所以它给了我错误
    【解决方案2】:

    好的,最后我自己解决了。这是我解决它的方法。

    当您创建Phone Class Library Project 时,您将不会创建ResourceDictionary.xaml by default,所以创建 xaml 页面,就像创建普通 xaml 文件一样。

    Right click on solution ->Add New Item ->Windows Phone Portrait Page.
    

    现在删除创建的 .cs 文件,在 .XAML 文件中添加您在 ResourceDictionary 标记内的样式。

    以上都是在Library project.完成的

    现在在child app:

    <Application.Resources>
            <ResourceDictionary>
    <ResourceDictionary.MergedDictionaries>
                    <ResourceDictionary Source="LibraryResourceDictionary.xaml"/>
                </ResourceDictionary.MergedDictionaries>
            </ResourceDictionary>
        </Application.Resources>
    

    假设你有一个在 ResourceDictionary 中定义为 MainScreenButtonStyle 的样式,你可以这样设置

    button.Style = (Style)Application.Current.Resources["MainScreenButtonStyle"] as Style;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多