尝试使用 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# 编程并且很高兴吗?
谢谢你的想法。
更新。问题存在并且表面甚至访问不同的参数。此处收集的更多详细信息: