0

尝试使用 Visual Studio 2010 修复 C# 中的错误时,我真的很生气:在面板内的图片框控件中加载图像时,图像会自动调整大小以填充整个区域。表单行为与 Dock 属性一样:填充;但是设计器正确面板中显示的 Dock 属性显然是:没有,正如预期的那样。

只是为了确保,经过几个小时的调试和测试,试图理解,我检查了 Mainform.Designer.cs 源,最令我惊讶的是,我发现了这行代码:

this.pictureBox.Dock = System.Windows.Forms.DockStyle.Fill;

我绝对确定我在说什么:我仔细检查了代码和属性面板。手动更改后(我知道我不应该)该行:

this.pictureBox.Dock = System.Windows.Forms.DockStyle.None;

一切都按设计启动并运行。

换句话说,代码与 Visual Studio 中显示的属性之间存在偏差。现在,我的问题是:只是我,还是其他人已经注意到这种行为?其他人是否注意到有时代码和 VS 显示为属性的内容是两个不同的东西?或者这是由于我做出的一些令人难以置信的马虎/错误/白痴?如果解释是后者,有什么可能是错误的提示(当然,除了我之外)?如果解释是前者,那么有人在没有 Visual Studio 的情况下使用 C# 编程并且很高兴吗?

谢谢你的想法。


更新。问题存在并且表面甚至访问不同的参数。此处收集的更多详细信息:

Trello CS 板

4

1 回答 1

1

当您对 Designer.cs 有权限问题时,可能会发生这种情况。即当您的代码与源代码控制集成时,它会使其只读以识别签出的文件。

于 2013-10-10T10:49:32.023 回答