从用户控件更改表单控件
Changing form control from user control
我正在尝试从自动添加的用户控件更改用户控件信息(标签、图片等)。但是我做不到。
这是我的代码;
private void KitapButton_Click(object sender, EventArgs e)
{
BıtıkForm BForm = new BıtıkForm();
BForm.kitapGoruntuleme.Visible = true;
}
public partial class BıtıkForm : Form
{
//create controls public instance
public Label label;
public BıtıkForm()
{
InitializeComponent();
//initialize the control
label = new Label();
}
}
现在您可以从其他地方访问它;
BıtıkForm BForm = new BıtıkForm();
BForm.label.Visible = true;
/////// 但我的建议是不要那样做,而是像下面那样做 ///////
BıtıkForm BForm = new BıtıkForm(controlVisible);//Pass the bool value as parameter to the constructor of form
BForm.Show();
然后在表格
public partial class BıtıkForm : Form
{
public BıtıkForm(bool controlVisible)
{
InitializeComponent();
//Set Control Visibility
someControl.Visible = controlVisible;
}
}
我没有太多地使用 C#,但它最终是面向对象的。我犯的错误是;每次触发事件时,我都会创建一个 'BıtıkForm' 的新实例。可以通过在事件所属的地方添加新的属性来解决,属性会携带'BıtıkForm'对象。所以它可以通过整个程序进行管理。
我正在尝试从自动添加的用户控件更改用户控件信息(标签、图片等)。但是我做不到。
这是我的代码;
private void KitapButton_Click(object sender, EventArgs e)
{
BıtıkForm BForm = new BıtıkForm();
BForm.kitapGoruntuleme.Visible = true;
}
public partial class BıtıkForm : Form
{
//create controls public instance
public Label label;
public BıtıkForm()
{
InitializeComponent();
//initialize the control
label = new Label();
}
}
现在您可以从其他地方访问它;
BıtıkForm BForm = new BıtıkForm();
BForm.label.Visible = true;
/////// 但我的建议是不要那样做,而是像下面那样做 ///////
BıtıkForm BForm = new BıtıkForm(controlVisible);//Pass the bool value as parameter to the constructor of form
BForm.Show();
然后在表格
public partial class BıtıkForm : Form
{
public BıtıkForm(bool controlVisible)
{
InitializeComponent();
//Set Control Visibility
someControl.Visible = controlVisible;
}
}
我没有太多地使用 C#,但它最终是面向对象的。我犯的错误是;每次触发事件时,我都会创建一个 'BıtıkForm' 的新实例。可以通过在事件所属的地方添加新的属性来解决,属性会携带'BıtıkForm'对象。所以它可以通过整个程序进行管理。