C# 从文本框中存储一个字符串值并调用该变量

标签 c# winforms textbox

作为我工作的一部分,我正在尝试编写一个基于 C# 的 winform 来执行多个自动文本输入过程。我希望将某些内容输入到文本框中,以免我手动进行。

我能够将文本框中的输入数据存储为字符串变量,但我想知道如何在单击单独的文本框时调用它。因此,多次“复制”一个盒子内的数据并将其放置在其他地方。

我不是 100% 确定字符串应该如何存储,但这是我的尝试:

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
        string chattextbox;
    }

我要在下面输入存储的字符串变量

private void button1_Click(object sender, EventArgs e)
{
    Application.OpenForms["Loginwindow"].BringToFront();
}

将窗口置于最前面后,我希望从字符串变量中调用数据并让它按下“Enter”键

希望我已经清楚地说明了我要做什么。

谢谢大家

最佳答案

在您的 TextChanged 事件处理程序中,您声明了一个字符串变量,但此时您没有为其分配任何内容。要保存它,您需要这样做:

string chattextbox; // member variable or property in your class

private void textBox1_TextChanged(object sender, EventArgs e)
{
    chattextbox = textBox1.Text;
}

请注意,chattextbox 必须是您的 Form 类中的成员变量,否则,如果您在方法的范围内声明了该变量(如在您的代码中),则该变量将在方法返回时消失。

您实际上不需要以这种方式保存它,它几乎可以在表单中的任何时间通过 textBox.Text 值访问。许多 Winforms 控件都有一个 Text 属性,它保存控件中显示的字符串值,无论它是按钮、文本框、标签等。您很可能完全删除这个 TextChanged 处理程序,然后只实现你的 button1_Click(见下文)。

在您的 button1_Click 处理程序中,您可以获得这样的值。要将值传递给其他窗口,您需要在其他窗口上有一个可以分配的属性,或者您需要在显示它之前将其传递到构造函数中。

private void button1_Click(object sender, EventArgs e)
{
    Loginwindow.SomeProperty = textBox1.Text; // Set the string value on your other form somehow ???
    Application.OpenForms["Loginwindow"].BringToFront();
}

关于C# 从文本框中存储一个字符串值并调用该变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5785830/

相关文章:

c# - 在文本框中显示 ListView 的值

c# - 访问转发器控件中的文本框

javascript - 如何让文档等待分配的输入值?

c# - 如何使用 C# 在 Windows 中关闭警告窗口?

c# - ASP.NET Core 2.2 JWT 认证

c# - NHibernate 动态创建/更改/删除表

c# - 从 PrintPreview 创建的图形是纵向而不是横向?

c# - 在图像中创建可点击区域?

c# - FileSystemWatcher 事件未触发

c# - 确定枚举类型