【发布时间】:2012-04-07 02:55:35
【问题描述】:
我有一个非常基本的问题。 场景:2 个表单 Form1,Form2- 接受用户 3 个输入的对话框 Form1 有一个网格,用户可以在其中选择一些单元格。 一旦用户做出选择,rowindex 和 colindex 就会存储在变量 c1,c1,r1,r2 中
表格1:
private InsertRowsMethod(...)
{
float dv ;
GridRangeInfoList list;
Boolean b = theGrid.Selections.GetSelectedRanges(out list, true);
if (list.Count > 0)
{
r1= list.ActiveRange.Top;
c1 = list.ActiveRange.Left;
c2 = list.ActiveRange.Right;
}
DateTime dt;
frmDialog dialog = new frmDialog();
dialog.Show();
int dialognrows = Int32.Parse(dialog.textBox1.Text);
float dialogdv = float.Parse(dialog.textBox2.Text);
// var dttext = (DateTime.Parse(textBox3.Text)).Ticks;
TimeSpan dialogdt = TimeSpan.Parse(dialog.textBox3.Text);
for (int nc = insertc1; nc <= insertc2; nc++)
{
insertData(nc, insertr1, dialognrows, dialogdv, dialogdt, null);
}
}
在 Form2 中: 它需要3个参数。 nrows,时间,价值 现在我需要将这 3 个变量从 Form2-Dialog 传递给 Form1。 我尝试了蛮力方式(我想改变它,我稍后会谈到)
In form2: I created method
private void button1_Click(object sender, EventArgs e)
{
int nrows = Int32.Parse(textBox1.Text);
float dv = float.Parse(textBox2.Text);
// var dttext = (DateTime.Parse(textBox3.Text)).Ticks;
TimeSpan dt = TimeSpan.Parse(textBox3.Text);
this.Hide();
}
所以它起作用了,我能够将三个参数 nrows、dv、dt(用户输入)从对话框传递到 form1-main 表单。
问题:我希望 Form1 中的程序等待,显示对话框,接受用户输入并返回并继续执行此部分。
for (int nc = insertc1; nc <= insertc2; nc++)
{
insertData(nc, insertr1, dialognrows, dialogdv, dialogdt, null);
}}
对话框应该显示,然后返回到 form1 执行插入数据
【问题讨论】: