using System;
using System.Windows.Forms;
public class MyClipboard {
public static void Main(string[] args) {
IDataObject data = Clipboard.GetDataObject();
if (data.GetDataPresent(DataFormats.Bitmap))
Console.WriteLine("剪貼簿資料類型:位圖!");
else if (data.GetDataPresent(DataFormats.Text))
Console.WriteLine("剪貼簿資料類型:文字!");
else if (data.GetDataPresent(DataFormats.Html))
Console.WriteLine("剪貼簿資料類型:HTML!");
else
Console.WriteLine("剪貼簿資料類型:其他!");
}
}
GetDataPresent。
Bitmap bmp = (Bitmap)data.GetData(DataFormats.Bitmap); // 位圖
string txt = (string)data.GetData(DataFormats.Text); // 文字
GetData 回傳 object(參考型別),強制轉型為 Bitmap/string(實值型別參考)完成拆箱。
bmp.Save(@"c:\my.bmp"); // 位圖存檔
richTextBox1.Text = txt; // 文字顯示
優先判斷位圖 → 存檔;次判斷文字 → 顯示;否則提示其他類型。此邏輯可擴充支援 HTML、CSV、檔案清單(DataFormats.FileDrop)等格式。