Я создаю приложение WPF, которое использует сокет для передачи данных на сервер и с сервера.Проблема: при отправке и получении данных с сервера экран завис, и я хотел бы добавить простую анимацию загрузки, чтобы конечный пользователь знал, что она в данный момент загружается, но я не знаю, как
Мой код сокета C #:
public static string SendRecOne(string dataToSvr)
{
TcpClient client = new TcpClient(SERVER_NAME, PORT);
#region SendRequest
int ByteCount = Encoding.ASCII.GetByteCount(dataToSvr); //How much bytes?
byte[] ByteBuffer = new byte[1024]; //initialize byte array
ByteBuffer = Encoding.ASCII.GetBytes(dataToSvr);
NetworkStream stream = client.GetStream();
stream.Write(ByteBuffer, 0, ByteBuffer.Length);
#endregion
#region Receive Response
//byte[] responseData = new byte[client.ReceiveBufferSize];
//int bytesRead = stream.Read(responseData, 0, client.ReceiveBufferSize);
int i;
string ToReturn = null;
ByteBuffer = new byte[ByteBuffer.Length];
MemoryStream ms = new MemoryStream();
while (true)
{
if (stream.DataAvailable)
{
while ((i = stream.Read(ByteBuffer, 0, ByteBuffer.Length)) != 0)
{
ms.Write(ByteBuffer, 0, ByteBuffer.Length);
if (stream.DataAvailable)
continue;
else
break;
}
ToReturn = Encoding.ASCII.GetString(ms.ToArray());
return ToReturn;
}
}
#endregion
, и я вызываю его после нажатия кнопки в окне, которое называется «login.xaml», и после проверки данных все в порядке, оно закрывает текущие окнаи инициализирует dashboard.xaml.Мне просто нужно добавить анимацию при общении с сервером.
Спасибо!