From d70b74ee4ab532c8357162d97dfbaf57d7698571 Mon Sep 17 00:00:00 2001 From: chfei Date: Wed, 28 Oct 2026 14:03:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=8D=95=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E5=A4=8D=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Views/TicketConversationView.xaml | 5 +++++ .../Views/TicketConversationView.xaml.cs | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/OrderSupportTicket/Views/TicketConversationView.xaml b/OrderSupportTicket/Views/TicketConversationView.xaml index eb4b212..5959b5e 100644 --- a/OrderSupportTicket/Views/TicketConversationView.xaml +++ b/OrderSupportTicket/Views/TicketConversationView.xaml @@ -164,6 +164,11 @@ CornerRadius="5" Cursor="Hand" ToolTip="{Binding ToolTipText}"> + + + + + InitializeComponent(); + + private void CopyImage_Click(object sender, RoutedEventArgs e) + { + e.Handled = true; + var window = Window.GetWindow(this); + if (window == null) return; + if (sender is not MenuItem { DataContext: ChatAttachmentViewModel attachment }) return; + if (attachment.Image is not BitmapSource bitmap) + { + ToastHelper.Show(window, "图片尚未加载成功,无法复制"); + return; + } + + var data = new DataObject(DataFormats.Bitmap, bitmap); + ToastHelper.Show(window, ClipboardHelper.TrySetData(data) ? "图片已复制" : "图片复制失败,请重试"); + } + private void CopyOrderId_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (sender is not FrameworkElement element || element.Tag is not string orderId || string.IsNullOrWhiteSpace(orderId)) return;