【发布时间】:2017-07-09 15:23:15
【问题描述】:
我正在制作一个程序,用户可以在一个表单的文本框中输入值,然后数据将转移到另一个表单。我认为最好的方法是将用户数据存储在几个数组中,然后将这些数组传递过来,但目前我在做这件事时遇到了真正的麻烦。一旦用户输入了他们需要多少个文本框,也会创建文本框,因此最初页面上不存在文本框
string q = combobox1.SelectedItem.ToString();
int g = Convert.ToInt32(q);
MessageBox.Show("I have added " +(g-1) +" Films to the list");
TextBox[] FilmTitle1 = new TextBox[int.Parse(q)];
TextBox[] FilmBudget1 = new TextBox[int.Parse(q)];
TextBox[] FilmBoxOffice1 = new TextBox[int.Parse(q)];
TextBox[] FilmDirector1 = new TextBox[int.Parse(q)];
TextBox[] FilmRtScore1 = new TextBox[int.Parse(q)];
TextBox[] FilmGenre1 = new TextBox[int.Parse(q)];
int y = 500;
for (int i = 0; i < g; i++)
{
FilmTitle1[i] = new TextBox();
FilmTitle1[i].Text = "Film Title";
FilmTitle1[i].Size = new Size(162, 20);
FilmTitle1[i].Location = new Point(106, y);
FilmTitle1[i].Tag = 0;
this.Controls.Add(FilmTitle1[i]);
y= y + 40;
private void Createbar_Click(object sender, EventArgs e)
{
BarGraphCreation frm = new BarGraphCreation(FilmTitle.Text, FilmBudget.Text, FilmBoxOffice.Text, FilmDirector.Text, FilmGenre.Text, ft1, FilmBudget1.Text, FilmBoxOffice1.Text, FilmDirector1.Text, FilmGenre1.Text);
frm.Show();
}
但是当我这样做时,它表示没有文本框的构造,尽管它允许它在程序中的其他任何地方使用。 非常感谢任何类型的帮助
【问题讨论】:
-
请输入
FilmTitle定义和BarGraphCreation()构造函数所在的行。 -
@Tatranskymedved 它已经在那里了。第 4 行代码向下。
-
@BugFinder:我只能看到构造函数的调用,但看不到它的定义。并且找不到
FilmTitle(我只能看到FilmTitle1)。 -
TextBox 是一个普通的windows控件——你不会得到文本框的构造函数。
-
所以
FilmTitle是TextBox或TextBox[]或string?
标签: c# arrays forms user-interface