C# 如何从其他表单设置文本框的默认文本?

C# 如何从其他表单设置文本框的默认文本?,c#,C#,我目前正在开发一个业务程序,当程序启动时,它会通过一个不可见的复选框检查设置是否已完成(即,如果用户已完成设置,则复选框将被选中,如果未完成,则复选框将不被选中) 我试过用谷歌搜索,但没有明确的答案 所以我的问题是,我可以通过另一个表单设置文本框的默认文本和复选框的默认状态吗 即,用户运行设置并键入许可证密钥,然后将其传输到主菜单窗体,程序在主菜单窗体中检查许可证密钥。然后,当他们完成设置后,它会选中主菜单上的复选框,以便设置不再显示 我已经知道如何将文本从form2传输到form1,但我只是停

我目前正在开发一个业务程序,当程序启动时,它会通过一个不可见的复选框检查设置是否已完成(即,如果用户已完成设置,则复选框将被选中,如果未完成,则复选框将不被选中)

我试过用谷歌搜索,但没有明确的答案

所以我的问题是,我可以通过另一个表单设置文本框的默认文本和复选框的默认状态吗

即,用户运行设置并键入许可证密钥,然后将其传输到主菜单窗体,程序在主菜单窗体中检查许可证密钥。然后,当他们完成设置后,它会选中主菜单上的复选框,以便设置不再显示

我已经知道如何将文本从form2传输到form1,但我只是停留在如何将默认文本设置为form2的文本上

这是表1中的代码:

 private void setup()
        {
            if(checkBox1.Checked == false)
            {
                MessageBox.Show("ERROR: No setup recorded. Entering Setup Now!");
                timer1.Enabled = false;
                Setup1 ds = new Setup1();
                ds.ShowDialog();
                textBox1.Text = ds.textBox1.Text;

            }

            if(checkBox1.Checked == true)
            {

            }
表格1:

成立表格(表格2):

(忽略状态为“非活动”和“活动”的文本框,用于更改MYSQL数据库中的许可证密钥状态。)

因此,在最后我希望它,以便许可证密钥文本框(第一个屏幕截图中的空文本框)将始终与提供的许可证密钥在安装过程中打开

谢谢,


Kadin

在Setup1上添加一个名为SetText(字符串文本)的公共方法

然后,当您创建设置1时

Setup1 ds = new Setup1();'

// Set the text you want.
ds.SetText(myText, true);

是的,你可以。只需重写form类的默认构造函数,就可以进行设置

public MyForm(string text = “default text”)
{
    InitializeComponent();
    textBox1.Text = text;
}

编辑:创建新构造函数并传递可选参数。如果不设置“text”的值,则将设置“default value”。

public void SetText(string text,bool isCompleted){TextBox1.text=text;CheckBox1.text=isCompleted;}
CheckBox1.text=isCompleted;行抛出了一个错误“无法隐式地将类型'bool'转换为'string'”。它还在From1上表示“isCompleted”“在当前上下文中不存在我更新了答案。对不起,我是说CheckBox1.Checked=isCompleted。我把它完成的地方改成了真的,但这是你的应用,我不知道它是否完成了。试试看,也许你更接近了。如果您还需要其他信息,请告诉我。但这是否使它成为用户每次启动程序时创建组件时的默认文本,是的。但是我无法让表单设置1更改表单1中的代码,因此,每当程序启动时,当用户完成设置时,许可证密钥将采用非默认格式1,用户需要在设置过程中添加该密钥,以便使用默认值将其添加到构造函数中
public MyForm(string text = “default text”)
{
    InitializeComponent();
    textBox1.Text = text;
}