繁体   English   中英

从用户控件更改表单控件

[英]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”对象。 所以它可以通过整个程序进行管理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM