gpt4 book ai didi

c# - Visual Studio 没有生成代码来实例化自定义控件的实例

转载 作者:行者123 更新时间:2023-11-30 20:14:25 29 4
gpt4 key购买 nike

我使用 C#、.Net3.5 和 Visual Studio 2008 创建了一个自定义控件。

然后,我将该控件从工具箱中拖出,添加到另一个控件。

执行此操作后,当我尝试编译时出现如下错误:

Error   1   Warning as Error: Field 'MyNamespace.MyControl._myCustomControl' is never assigned to, and will always have its default value null

查看 Designer.cs 文件,这是因为 VS 从不生成以下代码:

this._rgReportGallery = new MyNameSpace.MyCustomControl();

字段本身就在那里,将它添加到我放入的控件的代码,只是缺少实例化代码。

我可以手动添加该代码,一切似乎都正常,但一旦重新生成 designer.cs 文件,它就会再次丢失。

我什至成功地添加了一个不同的自定义控件并生成了该代码。

有人知道是什么原因造成的吗?

最佳答案

我遇到了这个问题,这里的回复帮助我找到了问题,我对我的组件可访问性和构造函数可访问性都使用了“内部”关键字。正如布伦特在我上面的几篇文章中提到的那样,VS 设计器显然在生成实例化行时遇到了问题,除了公共(public)构造函数之外,所以永远不要在类可访问性和构造函数不是“公共(public)”的情况下创建自定义用户控件。

顺便说一下,这对我来说是在 Visual Studio 2005 上发生的,而且它也会在 Visual Studio 2008 上发生,这并不让我感到惊讶。它也可能在早期版本的 VS 上发生。

关于c# - Visual Studio 没有生成代码来实例化自定义控件的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/535037/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com