Главное окно WPF автоматически закрывается вскоре после показа в течение 1 секунды.У меня есть только это главное окно в проекте wpf.При запуске приложения ошибки не отображаются.Не показывая никакой ошибки, MainWindow просто закрывается вскоре после загрузки.В App.xaml.cs нет ничего кода.
Вот код, написанный в главном окне.
public partial class MainWindow : Window
{
private Socket clientSocket;
private byte[] buffer;
public MainWindow()
{
InitializeComponent();
}
private bool CheckField()
{
if (txtIP.Text == string.Empty)
{
MessageBox.Show("Please specify IP Address");
return false;
}
if (txtPort.Text == string.Empty)
{
MessageBox.Show("Please specify Port Number");
return false;
}
return true;
}
private void btnGreen_Click(object sender, RoutedEventArgs e)
{
if(CheckField()) SendMessage("GREEN");
}
private void btnRed_Click(object sender, RoutedEventArgs e)
{
if (CheckField()) SendMessage("RED");
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
try
{
clientSocket = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
// if below code commented, window will not close
clientSocket.BeginConnect(new IPEndPoint(IPAddress.Loopback,
3333), new AsyncCallback(ConnectCallback), null);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void ConnectCallback(IAsyncResult ar)
{
clientSocket.EndConnect(ar);
}
public void SendMessage(string xmlstring)
{
try
{
byte[] xmlbuffer = Encoding.ASCII.GetBytes(xmlstring);
clientSocket.BeginSend(xmlbuffer, 0, xmlbuffer.Length,
SocketFlags.None, new AsyncCallback(SendCallback), null);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void SendCallback(IAsyncResult ar)
{
clientSocket.EndSend(ar);
buffer = new byte[clientSocket.ReceiveBufferSize];
}
}
Что здесь не так ???