diff --git a/chatclient/Data/MaterialTrayMenuItem.xaml b/chatclient/Data/MaterialTrayMenuItem.xaml index 5387ae3..d7abe29 100644 --- a/chatclient/Data/MaterialTrayMenuItem.xaml +++ b/chatclient/Data/MaterialTrayMenuItem.xaml @@ -1,7 +1,12 @@ - + + + + + \ No newline at end of file diff --git a/chatclient/LoginWindow.xaml.cs b/chatclient/LoginWindow.xaml.cs index f28d3c6..b27f93a 100644 --- a/chatclient/LoginWindow.xaml.cs +++ b/chatclient/LoginWindow.xaml.cs @@ -277,10 +277,28 @@ namespace chatclient } }); } - public void Window_Loaded(object sender, RoutedEventArgs e) + public async void Window_Loaded(object sender, RoutedEventArgs e) { log.Info("登录窗口已加载"); - + if (MainWindow.Client?.Connected == false) + { + log.Info("未连接服务器,尝试连接"); + // 异步连接操作 + await Task.Run(() => + { + try + { + MainWindow.Client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); + MainWindow.Client?.Connect(IPAddress.Parse(Server.ServerIP), Server.ServerPort); + MainWindow.StartReceive(); + } + catch (Exception ex) + { + log.Error($"连接失败: {ex.Message}"); + MainWindow.Client?.Close(); + } + }); + } try { string tempPath = System.IO.Path.GetTempPath(); @@ -323,7 +341,7 @@ namespace chatclient log.Error("保存登录信息到临时文件失败", ex); } } - if (MainWindow.token == null) Application.Current.Shutdown(); + if (MainWindow.token == null) Application.Current.Shutdown(); } } } diff --git a/chatclient/MainWindow.xaml b/chatclient/MainWindow.xaml index 1c1c515..cf720da 100644 --- a/chatclient/MainWindow.xaml +++ b/chatclient/MainWindow.xaml @@ -125,7 +125,7 @@ + TextWrapping="Wrap" MinHeight="50" MaxHeight="100" Margin="5" BorderBrush="#00000000"/>