我有一个WCF服务和一个Windows窗体。单击表单上的按钮时,我希望通过服务填充列表(包含4个成员)。然后我希望列表显示在From上,4个成员作为列。
更好的是,我想显示使用每个成员作为textBox的一部分。
现在,我只能在一个单独的列表框中显示每个成员。
这是代码。 GateInfo.cs:
using System.Runtime.Serialization;
namespace JimWcfFormTest3
{
[DataContract]
public class GateInfo
{
[DataMember]
public int carid { get; set; }
[DataMember]
public int paid_at_gate { get; set; }
[DataMember]
public int wash_pkg_purch { get; set; }
[DataMember]
public string carte { get; set; }
}
}
Service1.cs:
using System.Collections.Generic;
using System.ServiceModel;
namespace JimWcfFormTest3
{
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)]
public class Service1 : IService1
{
private List<GateInfo> _gate;
private Service1()
{
_gate = new List<GateInfo>();
}
public void Gate_to_Server(GateInfo gatein)
{
if (gatein != null) _gate.Add(gatein);
}
public List<GateInfo> Server_to_Term()
{
return _gate;
}
}
}
Form1.cs中:
private void button1_Click(object sender, EventArgs e)
{
int carnum = 2;
int pay = 1;
int wash = 5;
string txt = "TEST";
var data_out = new GateInfo { carid = carnum, paid_at_gate = pay, wash_pkg_purch = wash, carte = txt };
server.Gate_to_Server(data_out);
listBox1.DisplayMember = "carid";
listBox1.DataSource = server.Server_to_Term();
listBox4.DisplayMember = "paid_at_gate";
listBox4.DataSource = server.Server_to_Term();
listBox5.DisplayMember = "wash_pkg_purch";
listBox5.DataSource = server.Server_to_Term();
listBox6.DisplayMember = "carte";
listBox6.DataSource = server.Server_to_Term();
}
理想情况下,我想在一个textBox中显示这一切:
&#34;时间戳:Car = carid,Pay = paid_at_gate,Package = wash_pkg_purch,Ala Carte = carte&#34;
答案 0 :(得分:0)
@RezaAghaei回答了最初的问题:
在表单上删除DataGridView,然后将列表设置为DataSource 控件,例如dataGridView1.DataSource = server.Server_to_Term()
如何将这一切放在文本框中的问题在这里得到解答: How to Override ToString and Display in a textBox