Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Eto.Mac构建问题的表单和VS_C#_Xamarin_Xamarin.mac_Visual Studio Mac_Eto - Fatal编程技术网

C# Eto.Mac构建问题的表单和VS

C# Eto.Mac构建问题的表单和VS,c#,xamarin,xamarin.mac,visual-studio-mac,eto,C#,Xamarin,Xamarin.mac,Visual Studio Mac,Eto,我正在试验Mac版VS中的Eto.Forms。生成时,我收到以下错误: System.Reflection.TargetInputException异常 及 无法加载文件或程序集'Xamarin.Mac,版本=0.0.0.0, 区域性=中性,PublicKeyToken=84e04ff9cfb79065'或其 依赖关系 我认为这意味着我错过了一个参考资料。但是,Xamarin.Mac也不会显示在引用编辑器中。有人对我有什么想法或建议吗 当我在VS for Windows中运行它时,同样的解决方案

我正在试验Mac版VS中的Eto.Forms。生成时,我收到以下错误:

System.Reflection.TargetInputException异常

无法加载文件或程序集'Xamarin.Mac,版本=0.0.0.0, 区域性=中性,PublicKeyToken=84e04ff9cfb79065'或其 依赖关系

我认为这意味着我错过了一个参考资料。但是,Xamarin.Mac也不会显示在引用编辑器中。有人对我有什么想法或建议吗

当我在VS for Windows中运行它时,同样的解决方案工作得很好

添加的参考是系统EtoEto.XamMac2,主要使用以下代码:

    [STAThread]
    public static void Main(string[] args)
    {
        var platform =  Eto.Platforms.XamMac2;
        new Application(platform).Run(new MyForm()); 
    }

谢谢

经过一番搜索,我发现为您设置了解决方案: 我缺少的依赖项是:


/Library/Frameworks/Xamarin.Mac.framework/Versions/Current/lib/mono/Xamarin.Mac/Xamarin.Mac.dll

您应该做的是创建一个Xamarin.Mac应用程序并将Eto.XamMac2添加到其中。这允许您调试应用程序,并将使用Xamarin.Mac工具正确绑定。以下是如何做到这一点(使用最新的VS for Mac):

  • 创建一个新的Xamarin.Mac Cocoa项目
  • 删除除Info.plist、entications.plist和Main.cs之外的所有内容
  • 编辑Info.plist,清除“主界面”设置,使其为空
  • 添加Eto.XamMac2并将Main.Main()替换为启动代码:

    var platform = Eto.Platforms.XamMac2;
    new Application(platform).Run(new MyForm());
    
  • 更多详情请参阅