-1

这是我在 Stack Overflow 上的第一篇文章,如果我的问题不是很清楚,请见谅。为了添加更多上下文,我想在单击连接按钮时打开与 WebSocket 的连接,并在单击发送按钮时从连接按钮打开的连接发送消息。问题是我无法从发送消息按钮访问我在连接按钮中创建的 ws 变量。下面的代码可能会让您对我想要做什么有更多的了解:

   private void buttonConnect_Click(object sender, EventArgs e)
   {
        var ws = new WebSocket(textBoxSocketUrl.Text);

        ws.Connect();
   }

   private void buttonSendMessage_Click(object sender, EventArgs e)
   {
       ws.Send(textBoxMessage.Text);
   }

谢谢。

4

1 回答 1

0

This is expected, that you can not see ws variable, because it was created in another "context". In order to get it, ws should be part of your class. Try to change your code to something like this:

private WebSocket ws;

private void buttonConnect_Click(object sender, EventArgs e)
   {
        ws = new WebSocket(textBoxSocketUrl.Text);

        ws.Connect();
   }

   private void buttonSendMessage_Click(object sender, EventArgs e)
   {
       ws.Send(textBoxMessage.Text);
   }
于 2020-04-19T06:19:55.177 回答