110,534
社区成员
发帖
与我相关
我的任务
分享
///显示登录窗口,这里是主窗口
private void button9_Click(object sender, EventArgs e)
{
Form1 nf = new Form1(TxClient);
nf.Show();
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using SanNiuSignal;
using System.Threading;
using System.Net;
using SanNiuSignal.FileCenter;
namespace SocketClient
{
public partial class Form1 : Form
{
private ITxClient TxClient = null;
public Form1(ITxClient TxClient)
{
InitializeComponent();
this.TxClient = TxClient;
}
//这里是登录按钮事件
private void button1_Click(object sender, EventArgs e)
{
///发送用户我和密码并接收返回的数据判断是否登录成功,
//发送数据我会,但是接收回来这里不懂怎么办。
}
}
}
namespace SocketClient
{
public partial class Form1 : Form
{
private ITxClient TxClient = null;
public Form1(ITxClient TxClient)
{
InitializeComponent();
this.TxClient = TxClient;
}
//这里是登录按钮事件
private void button1_Click(object sender, EventArgs e)
{
User user=new User();
user.name="张三";
user.psw="******";
TxClient.sendMessage(user);
///上面发送用户名和密码给服务端后,服务端返回是否正确,并返回0,1,2,(0可以登录,1密码错误,2已经在线)
因为是异步,我这里发送了请求,而实际接收的数据却在主窗体上了。
}
}
}
public partial class Client : Form ,IFileSendMust
{
#region TCP客户端区
private ITxClient TxClient = null;
///连接服务器
private void button2_Click(object sender, EventArgs e)
{
try
{
TxClient = TxStart.startClient(textBox2.Text, int.Parse(textBox3.Text));
TxClient.AcceptString += new TxDelegate<IPEndPoint, string>(accptString);//当收到文本数据的时候
TxClient.StartEngine();
}
catch (Exception Ex)
{
MessageBox.Show(Ex.Message);
}
}
/// <summary>
/// 接收到文本数据的时候
/// </summary>
/// <param name="str"></param>
private void accptString(IPEndPoint end, string str)
{
textBox1.Text = str;
}
}
因为是异步通信,这里是主窗口接收数据的地方。
实际我是在Form1 上的按钮发送了请求,我想这里请求完,接收返回的数据。现在接收数据的是在主窗体上,要怎么返回到这个调用的窗体上呢?求教。