【问题标题】:How do I add the assembly reference to use Rect in c#?如何添加程序集引用以在 c# 中使用 Rect?
【发布时间】:2020-11-19 17:47:17
【问题描述】:

我想使用Rect Struct,我写Rect aaa = new Rect();,我得到the type or namespace could not be found 错误。我尝试添加所有usings,如网络示例:

using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Shapes;

我知道最后三个导入 the type or namespace Shapes does not exist in the namespace System.Windows. (are you missing an assembly reference?)

在提到的网页上,它说程序集是WindowsBase.dll。现在我不知道如何继续......

更新:我被告知要添加一个参考,但它是一个核心项目和that's not possible

我应该安装一个包,但 I don't see any package 包含这个 dll。 WindowsBase 包对 .net 5 无效,但在上面的文档中说这个 Struc 确实可以与 .net 5 一起使用。

我想使用这个结构。

【问题讨论】:

  • 您是否添加了 WindowsBase.dll 作为对 .csproj 文件的引用?
  • 添加对WindowBase的引用。
  • 怎么样?在哪里? <PackageReference Include="WindowsBase" /> ?
  • 我遵循了这些说明stackoverflow.com/a/20366962/11241615,但 WindowsBase 没有出现在 COM 选项卡中...
  • 极少数需要 Rect 的项目类型已经包含了它。当您需要将其添加到其他东西时,这是奇怪和可疑的。另请注意,您的项目将不再是跨平台的,也不会在服务器上运行。

标签: c# .net-5


【解决方案1】:

简短回答: 正如@imsmn 评论的那样,添加对 WindowsBase 的引用。通过右键单击解决方案资源管理器中的“参考”条目并选择“添加参考”来做到这一点。

长答案(或更准确地说,建议):

将来获得答案的简便方法: 对于没有歧义的“内置”类,你可以试试这个。在 Visual Studio 中,在代码窗口(C# 编辑器)中键入:

Rect r = new Rect();

然后将鼠标悬停在单词“Rect”下方的红色波浪线上。将弹出一个框,其中一个选项将是“显示潜在修复”。如果您单击它,其中一个选项通常是添加引用(如果需要)和 using 指令(如果需要)。

【讨论】:

  • 是的,我做了悬停选项,但我只得到 3 条与我的矩形结构无关的建议。
  • 另外,当我转到“添加引用”时,我在 COM 列表中看不到 Windows Base
  • 它不是 COM。在左侧,选择“程序集”条目,然后在右上角的搜索框中键入 windowsbase。
  • 我没有“程序集”。我正在使用 VS 2019 版本 16.8.1 版。或许我可以直接在csproj文件中添加?
  • 好的,我知道为什么。这是一个核心项目:stackoverflow.com/a/56774071/11241615
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-19
  • 1970-01-01
相关资源
最近更新 更多