我正在开发一个 C# 应用程序,我需要实现在剪贴板之间复制和粘贴多个图像以及关联文本的功能。目前,我正在使用 Clipboard.SetDataObject 方法来存储单个图像和文本,但我不确定如何扩展它以支持多个项目。
这是我当前代码的简化版本:
// Code for copying to clipboard
private void CopyToClipboard()
{
Image image = GetImage(); // A method to get the image
string text = GetText(); // A method to get the text
DataObject dataObject = new DataObject();
dataObject.SetData(DataFormats.Bitmap, true, image);
dataObject.SetData(DataFormats.Text, text);
Clipboard.SetDataObject(dataObject, true);
}
如何修改代码以支持在剪贴板中复制和粘贴图像列表及关联文本? 是否有推荐的格式或序列化方法用于在剪贴板中存储多个图像和文本? 我应该如何调整 CopyToClipboard 和相应的 PasteFromClipboard 方法来处理这种情况? 我感谢您提供的任何指导或示例。谢谢!
更好的想法是将项目存储在应用程序中(数据库或文件之类的东西中)并将其显示给用户。当用户选择其中之一时,您可以将该项目设置到剪贴板。这就是剪贴板管理器的工作原理,就像Ditto