Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 执行操作c时更新文本框#_C#_Forms_Visual Studio_Textbox_App Config - Fatal编程技术网

C# 执行操作c时更新文本框#

C# 执行操作c时更新文本框#,c#,forms,visual-studio,textbox,app-config,C#,Forms,Visual Studio,Textbox,App Config,我有一个初始屏幕,其中有一个文本框,显示从app.config文件的键中提取的名称 最初,该键显示例如60,如果我执行操作,则该键为3,但我不知道如何更新表示该键的文本框中的文本。这是我的代码,从中我得到值3: string nempresa; Configuration config = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath); nempres

我有一个初始屏幕,其中有一个文本框,显示从app.config文件的键中提取的名称

最初,该键显示例如60,如果我执行操作,则该键为3,但我不知道如何更新表示该键的文本框中的文本。这是我的代码,从中我得到值3:

        string nempresa;
        Configuration config = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath);

        nempresa = config.AppSettings.Settings["EMPRESA"].Value;

        this.textBoxNombreEmpresa.Dock = System.Windows.Forms.DockStyle.Bottom;
        this.textBoxNombreEmpresa.Font = new System.Drawing.Font("Bookman Old Style", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
        this.textBoxNombreEmpresa.ForeColor = System.Drawing.SystemColors.MenuHighlight;
        this.textBoxNombreEmpresa.Location = new System.Drawing.Point(0, 742);
        this.textBoxNombreEmpresa.Multiline = true;
        this.textBoxNombreEmpresa.Name = "textBoxNombreEmpresa";
        this.textBoxNombreEmpresa.Size = new System.Drawing.Size(1548, 68);
        this.textBoxNombreEmpresa.TabIndex = 3;
        this.textBoxNombreEmpresa.Text = nempresa;
        this.textBoxNombreEmpresa.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
有什么想法吗?

1)把
nempresa
变成一个属性:

string nempresa;

public string Nempresa
{
    get { return nempresa; }
    set { nempresa = value; }
}

2) 制作一个方法
updateTextBoxNombreImpresa(字符串值)

3) 调用setter中的方法:

public string Nempresa
{
    get { return nempresa; }
    set 
    {
        nempresa = value; 
        UpdateTextBoxNombreEmpresa(nempresa);
    }
}
4) 使用属性而不是字段:

this.Nempresa = whatEverYourValueIs;

编辑:这一行当然必须在文本框初始化之后

您希望它显示什么而不是3?@xTwisteDx该变量包含的内容,3是该变量包含的内容,但是如果我更新该变量,我希望文本框被更新以生成一个方法
updateTextBoxNombreImpresa(字符串值)
,并将
nempresa
生成一个属性。然后可以在属性的setter内调用此方法。这样,每当
nempresa
获得新值时,您的文本框将始终被填充。嗨,您的问题解决了吗?@MongZhu嗨!还在努力!有了计时器,这也许行得通!谢谢你的时间,Mong Zhu,我应该在设计师那里做这个吗?(我从C#)开始@LuckWallace不,你把它写进你的课堂表格里。属性将是表单的属性。因此,我有一个名为principal.cs的表单,在这个表单中有principal.Designer.cs和principal.resx。。。我该去哪里?抱歉问这个问题,但我是[principal.cs]中…@LuckWallace的初学者。打开设计器查看表单,然后按F7键跳转到代码Thank you Mong,但给我一个错误,因为我在步骤1)和步骤3中定义了两次Nempresa)
this.Nempresa = whatEverYourValueIs;