ChatX/chatclient/Data/ChatDataModel.cs

54 lines
1.5 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;
namespace chatclient.Data
{
/// <summary>
/// 聊天消息类,表示一条消息的内容和显示属性
/// </summary>
public class ChatMessage
{
/// <summary>
/// 发送者名称
/// </summary>
public required string Sender { get; set; }
/// <summary>
/// 消息类型(文本、图片、文件、系统消息等)
/// </summary>
public required MessageType Type { 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//系统信息
}
}