B. *_*non 0 c# datagridview visual-studio-2010 winforms
我可以在设计时为DGV设置最大和最小尺寸高度和宽度值,但不能在代码中设置.这将无法编译,因为"无法修改'System.Windows.Forms.Control.MaximumSize'的返回值,因为它不是变量":
dataGridViewPlatypi.MaximumSize.Height = dataGridViewPlatypi.Size.Height;
dataGridViewPlatypi.MinimumSize.Height = dataGridViewPlatypi.Size.Height;
dataGridViewPlatypi.MaximumSize.Width = dataGridViewPlatypi.Size.Width;
dataGridViewPlatypi.MinimumSize.Width = dataGridViewPlatypi.Size.Width;
Run Code Online (Sandbox Code Playgroud)
如果MaximumSize不是变量,为什么我可以在IDE中修改它?
请仔细阅读错误消息:
"无法修改'System.Windows.Forms.Control.MaximumSize'的返回值,因为它不是变量":
Control.MaximumSize是类型Size,它是一种值类型.该属性返回对象的副本,Size然后您继续尝试修改其属性.即使你可以修改它们也没有任何成就,因为你只会改变副本.
您需要将属性设置为一个全新的值,而不仅仅是更改副本的属性.
dataGridViewPlatypi.MaximumSize = new Size(width, height);
Run Code Online (Sandbox Code Playgroud)