我有class Client,它從Stream接收數據。通知MainWindow關於其他類中的更改
另外我有MainWindow,它有ListBox。
基本上我需要在收到新數據時在ListBox中添加項目。請參閱代碼(注意TODO線)
class Client
{
private TcpClient client;
private NetworkStream stream;
private ASCIIEncoding encoder;
private Thread clientThread;
public Client(string ip, int port)
{
this.client = new TcpClient(ip, port);
this.stream = client.GetStream();
this.encoder = new ASCIIEncoding();
clientThread = new Thread(Receive);
clientThread.Start();
}
public void Receive()
{
byte[] data = new byte[4096];
int bytesRead;
bytesRead = stream.Read(data, 0, 4096);
string[] message = DecodeMessage(data, bytesRead);
// TODO: Notify about new message
}
這裏是我的主窗口
public partial class MainWindow : Window
{
Client client;
public MainWindow()
{
InitializeComponent();
client = new Client("127.0.0.1", 2020);
}
public void updateChat(string[] message)
{
// TODO: Should add new messages into ListBox
}
private void send_Click(object sender, RoutedEventArgs e)
{
client.Send(0, this.messageBox.Text);
this.messageBox.Clear();
}
}
爲什麼downvote沒有至少下降一個評論這個問題? –
也許是因爲我的英語不好? :) –