在 `ChatDataModel.cs` 中添加 `Account` 类以存储临时账户信息。 修改 `TrayIconManager.cs` 的窗口关闭事件处理,移除通知显示并优化设置逻辑。 更新 `chatapi.cs` 中的服务器 URL 和 IP 地址。 调整 `LoginWindow.xaml` 的尺寸并添加 `Loaded` 事件处理,确保用户名和密码输入框正确绑定。 在 `LoginWindow.xaml.cs` 中实现读取和保存临时登录信息的功能。 修改 `MainWindow.xaml` 的选项卡定义,确保用户信息和设置选项卡正确显示。 更新 `MainWindow.xaml.cs` 中的登录和注册处理逻辑,确保正确处理服务器返回消息并清理资源。
64 lines
1.8 KiB
C#
64 lines
1.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Media;
|
|
using System.Windows;
|
|
using System.Windows.Media.Imaging;
|
|
using System.Windows.Controls;
|
|
using System.Windows.Input;
|
|
|
|
namespace chatclient.Data
|
|
{
|
|
/// <summary>
|
|
/// 聊天消息类,表示一条消息的内容和显示属性
|
|
/// </summary>
|
|
public class ChatMessage
|
|
{
|
|
/// <summary>
|
|
/// 发送者名称
|
|
/// </summary>
|
|
public required string Sender { get; set; }
|
|
/// <summary>
|
|
/// 消息类型(文本、图片、文件、系统消息等)
|
|
/// </summary>
|
|
public required MessageType MsgType { get; set; } = MessageType.Text;
|
|
/// <summary>
|
|
/// 消息发送者的头像图片
|
|
/// </summary>
|
|
public required BitmapImage Image { get; set; }
|
|
/// <summary>
|
|
/// 消息内容
|
|
/// </summary>
|
|
public required string Content { get; set; }
|
|
/// <summary>
|
|
/// 消息发送时间
|
|
/// </summary>
|
|
public DateTime Timestamp { get; set; }
|
|
/// <summary>
|
|
/// 消息在界面中的对齐方式(左/右)
|
|
/// </summary>
|
|
public HorizontalAlignment Alignment { get; set; } = HorizontalAlignment.Left;
|
|
/// <summary>
|
|
/// 发送者名称的显示颜色
|
|
/// </summary>
|
|
public Brush SenderColor { get; set; } = Brushes.Black;
|
|
}
|
|
public enum MessageType
|
|
{
|
|
Text,
|
|
Image,//图片
|
|
File,//文件
|
|
System//系统信息
|
|
}
|
|
/// <summary>
|
|
/// 临时账户信息类,包含用户名和密码
|
|
/// </summary>
|
|
public class Account
|
|
{
|
|
public string? UserName { get; set; }
|
|
public string? UserPassword { get; set; }
|
|
}
|
|
}
|