控制'似乎'被锁定

时间:2011-12-05 21:47:05

标签: c# .net winforms controls

我正在尝试将属性更改为控件,但它看起来好像是“锁定”但实际上并不是因为当我右键单击控件时它会将控件显示为已解锁。

我正在使用Visual Studio 2005,而且我从未使用过在提供的图片中似乎被锁定的控件。

我真的很感激一个简单的解释以及如何解决这个问题,以便我可以继续修改它。

enter image description here

7 个答案:

答案 0 :(得分:17)

当您尝试设计继承的表单并且该表单上的控件是 private 时,会发生这种情况。设计者观察可访问性修饰符。返回基本表单并将控件的Modifiers属性从Private更改为Protected。

答案 1 :(得分:3)

右键单击表单并取消选中“锁定控件”选项

这应该有所帮助。

答案 2 :(得分:1)

我遇到了完全相同的问题,但它只是发生在 DevExpress控件上。

几个小时后,修改修饰符并使自己陷入困境,我在Visual Studio中找到了此选项=> DevExpress => WinForms Controls vX.XX =>更改设计时设置=> 为Developer Express启用视觉继承Visual Studio中使用的控件

enter image description here

答案 3 :(得分:0)

如果您的项目中的表单A名称为“Form.cs”,则其他表单(B,C,D等)中的类将是“A”中的继承类“Form.cs”。它应该继承System.Windows.Forms.Form。只需尝试将A表单类名称从“Form.cs”更改为“Form1.cs”。

答案 4 :(得分:0)

在添加新的继承表单时,要解锁所有控件,请转到要继承的表单,选择 Designer.cs 文件并进行更改您想要将控件更改为受保护的。完成此操作后,构建解决方案,然后创建继承的表单。控件应解锁。

答案 5 :(得分:0)

刚才我在从备份目录恢复 .CS 后遇到了类似的问题。无法编辑的原因是(备份)文件是在只读模式下创建的。 一旦通过资源管理器删除“只读”属性并刷新 C# 项目后,问题就解决了。

答案 6 :(得分:-1)

转到表单解决方案资源管理器的基本代码 - > formXX - > Dispose(Boolean)并将继承行更改为Inherits System.Windows.Forms.Form