相关疑难解决方法(0)

使用 netstandard 的 Xamarin Forms 项目:无法构建 UWP

目前我正在开发一个 Xamarin 应用程序,它使用 .Net-Standard 代码共享策略。虽然我可以在 android 上成功构建和运行,但我在 UWP 项目上遇到了一些问题。

当我尝试构建项目时,我收到以下错误消息:

无法复制文件“obj\x86\Debug\myapp.UWP.xr.xml”,因为找不到它。

无法复制文件“obj\x86\Debug\MainPage.xbf”,因为找不到它。

无法复制文件“obj\x86\Debug\App.xbf”,因为找不到它。

无法解析程序集或 Windows 元数据文件“类型 Universe 无法解析程序集:myapp.Basic,版本=1.0.0.0,Culture=neutral,PublicKeyToken=null。”

当我在寻找这些错误消息时,我在 stackoverflow 上找到了这个线程:

UWP 中缺少类库文件的 xaml.xr

该线程建议在包含 XAML 代码的项目中启用“生成库布局”,这看起来非常有希望,因为 myapp.Basic 项目包含一些 XAML 代码。不幸的是,这个选项在 .Net 标准项目中完全没有。

有人可以帮我解决这个问题吗?

c# xamarin uwp .net-standard .net-standard-2.0

6
推荐指数
1
解决办法
1795
查看次数

如何将XBF文件添加到Visual Studio项目

我为Windows通用平台(Win 10 UWP)创建了一个类库。

该库中包含一些UserControls。

当我从该库中将dll添加到Win 10 UWP应用程序并使用UserControls时,它给出了XamlParseException,如我在发布的另一个问题中所述

但是,当我引用整个项目时,也没有例外,我可以使用UserControl。据说发生这种情况是因为有些xbf文件在我仅引用dll文件时没有添加到Win 10应用程序项目中。

在某个项目中,我需要将xbf文件手动添加到Win 10应用程序项目中,我不能引用整个项目,只能引用dll并添加所需的文件。

我尝试在Visual Studio项目中创建一个文件夹并添加xbf文件,还尝试创建具有不同名称的文件夹,然后通过Windows资源管理器将xbf文件复制到“ bin”目录中。但是没有成功。

因此,如何手动将xbf文件添加到Windows 10 UWP项目?

更新1:-XAML和代码供参考

public sealed partial class CustomPopupControl : UserControl
{
    internal CustomPopupControl()
    {
        this.InitializeComponent();    //-------CRASHES HERE-------
    }

    internal CustomPopupControl() : base()
    {
        Debug.WriteLine("CustomPopupControl");
        //
        //do some stuff
        //
        //
    }

    private void OnPopupLoaded(object sender, RoutedEventArgs e)
    {
        this.Popup_Container.HorizontalOffset = (Window.Current.Bounds.Width - Grid_Child.ActualWidth) / 2;
        this.Popup_Container.VerticalOffset = (Window.Current.Bounds.Height - Grid_Child.ActualHeight) / 2;
    }

    internal void OpenPopup()
    {
        Debug.WriteLine("OpenPopup");
        Popup_Container.IsOpen = true;

        var currentFrame …
Run Code Online (Sandbox Code Playgroud)

c# windows-8 windows-store-apps win-universal-app windows-10

4
推荐指数
1
解决办法
1694
查看次数

UWP类库中的参考ResourceDictionary

我们有一个使用Template 10的UWP应用。资源在同一解决方案的UWP类库中。当我们运行应用程序时,我们得到错误

{Windows.UI.Xaml.Markup.XamlParseException:无法从“ ms-resource:/// Files / Styles \ ButtonStyle.xaml”中找到资源。

在App.xaml中,我们有

<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="Styles\Custom.xaml" />
    <ResourceDictionary Source="Styles\ButtonStyle.xaml"/>
    <ResourceDictionary Source="Styles\ListsStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
Run Code Online (Sandbox Code Playgroud)

我们遵循了

Windows 10通用合并字典

<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="ms-appx:///Styles/Custom.xaml" />
    <ResourceDictionary Source="ms-appx:///Styles/ButtonStyle.xaml"/>
    <ResourceDictionary Source="ms-appx:///Styles/ListsStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
Run Code Online (Sandbox Code Playgroud)

那么错误是

{Windows.UI.Xaml.Markup.XamlParseException:无法分配给属性“ Windows.UI.Xaml.ResourceDictionary.Source”,因为无法将类型“ Windows.Foundation.String”分配给该类型...

我们还在单独的库中的ResourceDictionary中尝试了该解决方案

<ResourceDictionary.MergedDictionaries>
    <ResourceDictionary Source="pack://application:,,,/LibraryName;component/Styles/Custom.xaml" />
    <ResourceDictionary Source="pack://application:,,,/LibraryName;component/Styles/ButtonStyle.xaml"/>
    <ResourceDictionary Source="pack://application:,,,/LibraryName;component/Styles/ListsStyle.xaml"/>
</ResourceDictionary.MergedDictionaries>
Run Code Online (Sandbox Code Playgroud)

那么错误是

{Windows.UI.Xaml.Markup.XamlParseException:无法从pack:// application:,, / LibraryName; component / Styles / Custom.xaml'找到资源

我们如何在UWP类库中引用ResourceDictionary?

xaml uwp uwp-xaml

2
推荐指数
1
解决办法
1326
查看次数