有没有办法从用户控制中的按钮访问主窗体属性,如(不透明度、顶部、背景颜色等(
我试过了,但没用
private void button1_Click(object sender, EventArgs e)
{
Form1 frm1 = new Form1();
frm1.TopMost = true;
frm1.Opacity = 50 %;
}
您可以使用应用程序。OpenForm数组访问任何打开的表单:
Application.OpenForms[0].Text = "Hello";
或者,一种更好的方式:
public static T GetForm<T>()
{
foreach(object f in Application.OpenForms)
{
if (f is T) return (T) f;
}
return default(T);
}
使用此方法访问Form1的示例:
GetForm<Form1>().Text = "Hello";
您可以调用Control.FindForm Method
来获取控件所在的窗体。
并且通常使用0-1之间的小数来分配CCD_ 2。
private void btnInUserControl_Click(object sender, EventArgs e)
{
Form1 form1 = this.FindForm() as Form1;
form1.Opacity = .5;
form1.TopMost = true;
}