Files
29WxOrder/OrderSupportTicket/Views/TicketConversationView.xaml.cs
2026-10-28 14:03:54 +08:00

38 lines
1.3 KiB
C#

using _29WxOrderWpf.ToolCtrls;
using OrderSupportTicket.ViewModels;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media.Imaging;
using Work._29Tools.Forms.ToolForms;
namespace OrderSupportTicket.Views;
public partial class TicketConversationView : UserControl
{
public TicketConversationView() => 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;
var window = Window.GetWindow(this);
if (window != null) ToastHelper.Show(window, ClipboardHelper.TrySetText(orderId) ? "订单号已复制" : "复制失败");
}
}