BlitsMe.UDTTester.MainWindow.SendFileButton_Click C# (CSharp) Method

SendFileButton_Click() private method

private SendFileButton_Click ( object sender, System e ) : void
sender object
e System
return void
        private void SendFileButton_Click(object sender, System.Windows.RoutedEventArgs e)
        {
            try
            {
                var fileDialog = new OpenFileDialog();
                Nullable<bool> result = fileDialog.ShowDialog(this);
                if (result == true)
                {
                    DisableClientServerButtons();
                    string filename = fileDialog.FileName;
                    Udt.StdFileStream fs = new Udt.StdFileStream(filename, FileMode.Open);
                    byte[] buffer = new byte[16834];
                    _socket.Connect();
                    Status.Text = "Sending size " + fs.Length;
                    _socket.Send(BitConverter.GetBytes(fs.Length), sizeof(long));
                    int read = fs.Read(buffer, 0, 16834);
                    Status.Text = "Sending filename " + filename;
                    while (read > 0)
                    {
                        _socket.Send(buffer, read);
                        read = fs.Read(buffer, 0, 16834);
                    }
                    fs.Close();
                    _socket.Close();
                    Status.Text = "Sent " + filename;
                    SendFileButton.IsEnabled = false;
                }
            }
            catch (Exception ex)
            {
                Dispatcher.Invoke(new Action(() => ErrorBlock.Text = ex.Message + "\n" + ex.StackTrace));
            }
        }