请我帮忙将数据从文本框发送到另一个表单的列表视图(列数量)。
我有form1
namespace officine
{
public partial class FormClav : Form
{
public FormClav()
{
InitializeComponent();
}
...
private void validation_Click(object sender, EventArgs e)
{
// need code here
// onclik thisend textbox1 to listview1 in formOrd
}
我有第二种形式的lisview1
我在获取条形码后从dabase填写此listview。
然后我调用form1(数字键盘)来改变质量列。
所以我需要将文本框中的数据(FormClav
)发送到FormOrdo
namespace officine
{
public partial class FormOrdo : Form
{
.......
private void loadproduct()
{
listView1.Items.Clear();
cn.Open();
cmd.CommandText = "select * from vente";
dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
string[] row = { dr[1].ToString(), dr[2].ToString()};
var listViewItem = new ListViewItem(row);
listView1.Items.Add(listViewItem);
}
}
cn.Close();
}
有什么想法吗?
答案 0 :(得分:0)
您可以在FormClav中设置一个公共变量,并在其中放置您需要的值。
public partial class FormClav : Form
{
public FormClav()
{
InitializeComponent();
}
public string yourvalue = ""
}
private void validation_Click(object sender, EventArgs e)
{
yourvalue = textbox1.text;
}
答案 1 :(得分:0)
尝试在第一个表单中实例化指向线程安全方法的第二个表单时尝试传递委托,该表单可以更新列表视图。
答案 2 :(得分:0)
您好过去的文本框值到另一个表单使用此代码:
private void validation_Click(object sender, EventArgs e)
{
form2 a = new form2();
a.MdiParent = this.MdiParent; // sets form2 as 'parent window'
a.value = yourTextBox.Text; // sets variable 'value' in form2 equal to yourTextBox value after button is clicked
a.Show(); //opens form2
}
在表单2中生成get set value
public string value { get; set; }
现在您可以轻松使用value
。
e.g。 listView1.Items.Add(value);
在表单加载时添加到listView:
private void Form2_Load(object sender, EventArgs e)
{
listView1.Items.Add(value);
}
编辑:
public partial class Form1 : Form
{
Form2 Frm2;
public Form1()
{
InitializeComponent();
Frm2 = new Form2(this);
}
private void button1_Click(object sender, EventArgs e)
{
Frm2.Show();
Frm2.textBox1.Text = "From Form1";
}
}
public partial class Form2 : Form
{
Form1 Frm1;
public Form2(Form1 F)
{
InitializeComponent();
Frm1 = F;
}
private void button1_Click(object sender, EventArgs e)
{
Frm1.textBox1.Text = "From Form2";
Frm1.listView1.Items.Add(textBox1.Text);
}
}