可能重复:
(c# + windows forms) Adding items to listBox in different class
我想获取form1中的组合框值并在form2中使用它,因为该值将从注册用户返回另一个数据
public void povoacboxcliente()
{
List<SM.BancoDados.BD.Model.Clientes> lstClientes = new List<SM.BancoDados.BD.Model.Clientes>();
ClienteFlow flow = new ClienteFlow();
lstClientes = flow.RetornaClientes();
cboxCliente.DataSource = lstClientes;
cboxCliente.DisplayMember = "Nome";
cboxCliente.ValueMember = "Id";
}
现在值成员(Id)将返回成员的性别,即数据库,这部分是可以的,但我想要的是以另一种形式进行操作..这是我的代码尝试使用form2
public void enviasexo()
{
EnviarComando("0238373b3be503");
idClient = Convert.ToInt32(cboxCliente.SelectedValue);
UsuarioFlow usuarioFlow = new UsuarioFlow();
string combo = cboxCliente.SelectedValue.ToString();
string sexo = usuarioFlow.RetornaSexo(combo);
if (sexo == "M")
{
Thread.Sleep(2000);
EnviarComando("0232343b3bdc03");
Thread.Sleep(200); //envia comando
}
else if (sexo == "F")
{
Thread.Sleep(2000);
EnviarComando("0232353b3bdd03");
Thread.Sleep(200);
}
}
在form1中使用了“cboxCliente”
谢谢大家!
答案 0 :(得分:4)
一种方法是在Form1.Designer.cs中公开ComboBox
然后从Form2
访问ComboBoxForm Form1Object = new Form1();
Form1Object.cboxCliente.SelectedValue.ToString();
见
的类似答案答案 1 :(得分:0)
请在使用不同形式的值时使用Asp.Net中提供的状态管理技术之一。
见这个 http://www.codeproject.com/Articles/331962/A-Beginner-s-Tutorial-on-ASP-NET-State-Management
客户端状态管理技术
查看状态 控制状态 隐藏的领域 饼干 查询字符串
服务器端状态管理技术
申请状态 会话状态
如果其中一个控件值严格依赖于来自用户的表单1 ...输入,则不应向用户显示表2。在表格2和表格上应用页面验证 如果未选择下拉列表中的值,则将用户重定向到form1。
希望这会有所帮助 [shaz]