我正在尝试在外部DLL中创建一个名为DataTemplate.xaml的ResourceFile,并在WP7页面中使用它.当我在页面的标题中执行以下操作时出现错误
<ResourceDictionary Source="pack://application:,,,/WP7SharedClassLibrary;component/DataTemplate.xaml" />
错误是"当前项目不支持'应用程序'作为包URI的权限组件."
有没有其他人遇到这个并解决了这个问题?
Der*_*kin 13
我已设法使用以下步骤使其工作:
将以下XAML添加到新的XAML文件中:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<SolidColorBrush x:Key="ForegroundBrush" Color="Red" />
</ResourceDictionary>
Run Code Online (Sandbox Code Playgroud)在WP7ExternalResourcesTest中,打开App.xaml并将该Application.Resources
部分更改为以下内容:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/WP7ExternalResourcesTestLibrary;component/External.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
Run Code Online (Sandbox Code Playgroud)Foreground="{StaticResource ForegroundBrush}"
到TextBlock
命名的"PageTitle".TextBlock
正确显示红色的"页面名称"字样.希望这可以帮助.
小智 1
我在尝试共享 XAML ResourceDictionary 文件时尝试了 pack 语法,并收到了相同的错误消息。我最终使用了这种语法,它对我有用。
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/MyDLLName;component/Folder/MyXAMLFile.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4106 次 |
最近记录: |