***更新***在花了几天和几十个小时在潜在的修复,没有任何工作,我已经放弃使用Noesis。StackOverflow不会让我删除这个,因为它已经“回答”,但我向你保证,我已经尝试了这些解决方案,他们也不工作。
我最近下载了Unity和Visual Studio,并试图将NoesisGUI框架集成到我的项目中。它需要System.Windows.RoutedEventArgs类,但我在System.Windows中只能看到Input类。我在谷歌上搜索了一下,RoutedEventArgs应该在4.8 .net框架中,我已经验证了我的Visual Studio .net版本是4.8.3928.0。
值得注意的是,在“解决方案”选项卡的“引用”部分中,列出了一百个不同的System.dll引用(包括System.Windows),但没有列出System.Windows.RoutedEventArgs。
下面是一些参考代码,尽管我已经删除了不重要的部分。
using System;
using System.Windows.Controls;
namespace Dummy_Project
{
public partial class Dummy_ProjectMainView : UserControl
{
private void Button_Click(object sender, System.Windows.RoutedEventArgs e)
{
}
}
}
我尝试下载.net 4.8框架并安装它,但它仍然丢失。我还尝试按照these指令多次卸载该项目,但没有生成.vcxproj,因此它停止在那里。我甚至卸载并重新安装Visual Studio,但这没有改变任何事情。
我还找到了PresentationCore.dll,并将其移动到项目使用的其他引用的同一文件夹中,重建了项目,但它仍然没有拾取它。我尝试按照these说明将其添加到引用列表中,但当我右键单击时,“添加项目引用”选项甚至没有显示
如有任何建议,我们将不胜感激。
2条答案
按热度按时间f2uvfpb91#
Noesis GUI does integrate with Unity,您可以在其中执行design user interfaces, controls externally either in Visual Studio or Microsoft Expression Blend。不过,您的问题似乎是,您试图将一个本质上是类库项目(由Unity创建)的项目转换为支持NoesisGUI的项目。有更简单的方法可以做到这一点。
修复
您应该从针对NoesisGUI的东西开始,而不是在事实发生后更改它。
您应该使用可用的NoesisGUI Visual Studio项目模板here。
...允许您使用Noesis创建新的Unity应用程序:
在Visual Studio中进行设计:
查看Unity中的结果:
(图片来源于noesisengine,未经许可使用)
另请参阅
1sbrub3j2#
Unity会将项目引用添加到它的已知库中,或者那些你手动添加到
Plugins
文件夹中的库中。但即使这样,已知库通常是存根,手动添加的插件也需要兼容。与标准的VS项目不同,它不会提取你本地机器上的所有库。为了说明这一点,如果你想使用
System.Text.Json
,你需要手动下载该dll和所有依赖项,并将它们添加到Plugins
文件夹中。之后,你就可以访问System.Text.Json
命名空间了。因此,在某些情况下,这是可以做到的。话虽如此,几乎可以肯定的是,你将无法使用任何与Windows“绘图”有关的东西。这一点,你可能最终试图包括一个依赖关系的蜘蛛网,试图让它工作。
例如,如果我只是将PresentationCore.dll(其中定义了RoutedEventArgs类)复制到我的
Plugins
文件夹中,则会得到以下结果:然后需要'System.Windows.Automation'命名空间,但我看不到定义在哪个dll中。但这就是我的观点。现在,特别是与NoesisGUI相关的...您是否注意到项目已经包含RoutedEventArgs的“代理”?“NoesisGUI/Plugins/API/Proxies”中有一个名为RoutedEventArgs.cs的文件。