winforms 从工具箱拖放到Windows窗体设计器时出现对象引用异常

kmynzznz  于 2023-08-07  发布在  Windows
关注(0)|答案(8)|浏览(113)

将控件从工具箱中拖放到Windows窗体设计器中时,将出现一个消息框,其中显示消息Object reference not set to an instance of an object
关闭消息框后,我可以将控件放在窗体上,而不会出现任何其他问题。
这也发生在一个新项目上。该错误出现在VS 2015和2017(两个社区版本)中。

**EDIT:**这会发生在任何控件上,包括自定义控件。这是在我更新到最新版本的Windows 10(17134.48)后开始发生的。

tag5nh1u

tag5nh1u1#

而不是拖放,点击控件,然后点击表单是变通办法工作,我直到他们出来一个较新的更新。
对于我来说,这是Visual Studio 2017版本15.8.6的新行为。
希望这将帮助其他人,只是不断拖放一遍又一遍,就像我正在做的:-)

2cmtqfgy

2cmtqfgy2#

在Microsoft Visual Studio Community 2019版本16.5.0上遇到相同问题。我发现当VS在我的高DPI外部显示器上打开时,我不能拖放控件,但是如果我将VS移动到我的本地笔记本电脑显示器上,我就可以拖放控件了。

new9mtju

new9mtju3#

对于Visual Studio 2017,我没有解决这个问题,但我找到了一个解决方案:

  • 转到 C:\Users\user.name\AppData\Local\Microsoft\VisualStudio\15.0_e3603226
  • 删除了所有**.tbd*、privateregistry.bin*、ApplicationPrivateSettings.xml 文件
  • 已删除 ComponentModelCache 文件夹中的所有文件
  • 以管理员身份重新启动Visual Studio
  • 显示更新MEF文件的消息
  • 拖放是工作。它不断抛出相同的错误
    *但是我可以在工具箱中单击我想要的项目,然后单击设计器,而无需拖动,它就可以工作。

对于Visual Studio 2015,我没有解决这个问题,但我找到了一个解决方案:

  • 转到 C:\Users\user.name\AppData\Local\Microsoft\VisualStudio\14.0
  • 删除所有**.tbd*,**.lock*,* devenv.exe.config * 文件
  • 已删除 ComponentModelCache 文件夹中的所有文件
  • 以管理员身份重新启动Visual Studio
  • 拖放是工作。它不断抛出相同的错误
    *但是我可以在工具箱中单击我想要的项目,然后单击设计器,而无需拖动,它就可以工作。
swvgeqrz

swvgeqrz4#

我今天在Visual Studio 2019中也看到了同样的问题(今天是2019年6月27日)。我正在试用CristisS的VS 2017解决方案(见上图)。我已经验证了“变通方法”仍然会引发异常,但是,您可以立即将工具绘制到窗体上。

1u4esq0p

1u4esq0p5#

我反复遇到同样的问题。似乎总是由在辅助监视器上运行Windows窗体设计器引起的。我不知道是什么原因导致它行为不端,但将Windows窗体设计器窗口移回笔记本电脑屏幕总是可以解决这个问题。Idk,如果它与缩放有关,或者什么,但它是一个非常重复的问题,需要解决。

6ljaweal

6ljaweal6#

将Visual Studio从我的高分辨率辅助显示器移动到我的主笔记本电脑显示器确实解决了这个问题。
为了在较大的辅助显示器上使用Visual Studio,我将辅助显示器从3840x2160设置为2560x1440,并将缩放比例从150%设置为100%**
这让我可以在**Visual Studio 2019(V16.11.3)**中从工具箱拖放到设计器,而不会再次出现问题。

lskq00tm

lskq00tm7#

我找到了两个解决方案,他们在VS2015中为我的WPF项目工作的这个问题
解决方案1)点击窗口设计底部的图标“启用/禁用项目代码”(靠近缩放百分比的最后一个图标)-->Put Disable。
解决方案2)在你的文件.xaml上点击鼠标键,然后在混合中应用你的修改,选择“在混合中打开...”菜单。
就这些了
丹尼尔,丹尼尔。

33qvvth1

33qvvth18#

旧文章,但我希望这对某人有所帮助:
我在Visual Studio Professional 2019上找到了一个适合我的解决方案:将辅助监视器设置为125%并拖放一个项目。然后将其设置回100%,问题就解决了。

相关问题