Preface我正在使用Visual Studio Community 2022。我正在尝试制作一个简单的c# windows窗体应用程序来学习c#。我对编程逻辑并不陌生,但我是个C#新手。这是我的第一个问题。
我在做什么表单中有几个文本框,我正在将这些文本框的字符串内容放入字符串数组中。然后一个按钮启用一个使用该数组的计时器。目前,由于我找不到更好的方法来做这件事,这就是它的工作方式(它确实工作):
private string[] xxx()
{
string[] yyy = { textbox1.Text, textbox2.Text, etc. };
return yyy;
}
private void Timer_Tick(object sender, EventArgs e)
{
string[] zzz = xxx();
// use zzz below
}
当计时器被启用时,文本框不能被编辑,所以yyy数组在这段时间内不能改变(我在计时器开始时禁用文本框-直到它停止)。我不知道这是不是最好的方法,但是在Timer中重复使用另一个函数,而不是在Timer中定义一次并使用的简单数组变量,感觉有点奇怪。这段代码是否足够优化,或者是否有更好的方法?
- 我假设代码是未优化的,因为它每次计时器滴答时都会从文本框中获取值。所以我想做的(或者说我认为会更优化的)是从文本框中获取值到一个数组中,并在计时器中使用该数组。简而言之:
而不是这样:
- 计时器滴答声:获取文本框中的所有值到一个数组中-使用该数组
- 计时器滴答声:获取文本框中的所有值到一个数组中-使用该数组
- 计时器滴答声:获取文本框中的所有值到一个数组中-使用该数组
我正在努力做到这一点:
- 获取文本框中的所有值到数组中
- 计时器滴答声:使用数组
- 计时器滴答声:使用数组
- 计时器滴答声:使用数组
1条答案
按热度按时间3ks5zfa01#
您可以将TextBox本身放入数组,而不是将TextBox的Text放入数组。由于TextBox是类,因此是引用类型,因此这个数组将存储对这些TextBox的引用,您将能够检索(或设置)实际的Text值。
请注意,您必须在调用**
InitializeComponent
之后初始化数组**,因为这是创建Form控件的方法。