我有一个基本形式。我将“确定”和“取消”按钮放在表单的右下方,并将它们锚定在底部和右侧。
继承的表单不支持 Ok 和 Cancel 按钮的锚属性。以下是复制的确切步骤。
1-使用位于底部/右侧的按钮创建一个基本表单。将其固定在底部,对。3- 创建一个继承自步骤 1 中创建的基本表单的新表单。 4- 增加(在设计器中)第二个表单的高度或宽度。5- 你会看到按钮没有完全移动,因此破坏了它的锚属性。
我做错了什么,还是 VS2008 根本不尊重基本表单上控件的锚属性?
谢谢。
我有一个基本形式。我将“确定”和“取消”按钮放在表单的右下方,并将它们锚定在底部和右侧。
继承的表单不支持 Ok 和 Cancel 按钮的锚属性。以下是复制的确切步骤。
1-使用位于底部/右侧的按钮创建一个基本表单。将其固定在底部,对。3- 创建一个继承自步骤 1 中创建的基本表单的新表单。 4- 增加(在设计器中)第二个表单的高度或宽度。5- 你会看到按钮没有完全移动,因此破坏了它的锚属性。
我做错了什么,还是 VS2008 根本不尊重基本表单上控件的锚属性?
谢谢。
嗯,按照你的步骤,完美地工作......
确保继承的表单没有覆盖设计器中的某些属性......我的“继承表单”只有这个:
private void InitializeComponent()
{
this.SuspendLayout();
//
// Form2
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.ClientSize = new System.Drawing.Size(296, 154);
this.Name = "Form2";
this.ResumeLayout(false);
}
一定要观察一些非常顽皮的事情正在发生。基类的私有字段的属性正在发生变化(Location 属性),这完全违反了 .NET 可访问性规则。这在一定程度上是可行的,但是一旦你运行你的项目就会耗尽气体。修复很简单,将按钮的修饰符属性从私有更改为受保护。
这个对我有用。
你是如何创建继承形式的?我去
按钮按预期移动。