【问题标题】:InitializeComponent() - Ambiguous invocation warning?InitializeComponent() - 不明确的调用警告?
【发布时间】:2017-10-24 05:52:15
【问题描述】:

我承认我是 xaml 世界的新手,但看到使用内置 Visual Studio 模板的警告表明可能还有其他问题除了我的大脑

如果我在 Visual Studio 中使用Add -> New Project 创建一个空的VSIX Project它必须是一个 VSIX 项目),然后继续使用 Add -> New Item -> User Control (WPF) 创建一个新的用户控件,之后我已经编译了代码,编辑器在InitializeComponent()这一行给我显示了警告Ambiguous invocation,如下图:


编辑

Designer 视图中也有警告,如下所示:


警告仅出现在编辑器中。构建项目没问题,如下图:


请注意,如果您将User Control (WPF) 添加到Class Library (.NET Framework) 项目,则会出现NO警告,如下所示:


如果我查看SomeProjectobj/Debug/ 文件夹,我会看到SomeControl 的两个文件。第一个是SomeControl.g.cs,第二个是SomeControl.g.i.cs。文件完全相同。

SomeOtherProjectobj/Debug/ 文件夹也是如此,没有警告。

我已经克隆了各种官方 Microsoft 存储库(例如 UnitTestBoilerplateGenerator),警告也出现在此处,例如:src/View/CreateUnitTestBoilerplateDialog.xaml.csInitializeComponent(),如下所示:


怎么了?? =(

编辑

这是使用 Visual Studio 15.4ReSharper 2017.2.2;对于旧版本的 Visual Studio/ReSharper,我似乎没有收到此警告。

编辑

这似乎是 ReSharper 特有的问题,因为在暂停 ReSharper 后,警告不再存在。我已经通过ReSharper -> Help -> Report a Bug or Submit Feedback...提交了一个bug。

【问题讨论】:

  • 使用帮助 > 发送反馈 > 报告问题并告诉他们。
  • 我已向 ReSharper 提交了一个错误。谢谢!

标签: c# wpf xaml resharper mef


【解决方案1】:

ReSharper 2017.2.x 是 a known issue

更新:已在 ReSharper 2017.3 版本中修复。

【讨论】:

  • 我在 2017.3.3 并且肯定没有解决 :-(
  • 我有2017.3.5,这个版本没有修复。
  • 2018.1 EAP会根据问题中的cmets修复。
猜你喜欢
  • 2012-10-15
  • 1970-01-01
  • 2013-10-27
  • 2022-06-17
  • 2015-04-26
  • 1970-01-01
  • 2018-04-22
  • 1970-01-01
  • 2011-07-13
相关资源
最近更新 更多