7

私のアプリケーションにpictureBoxは、画像を表示する があります。ユーザーが右クリックしてコンテキストメニューからpictureBox選択するとCopy、画像をクリップボードにコピーして、ユーザーがフォルダーや他の場所に貼り付けることができるようにします。どうやってやるの?

編集:私はこのコードを使用しますが、このユーザーは画像を単語にのみ貼り付けることができます。

var img = Image.FromFile(pnlContent_Picture_PictureBox.ImageLocation);
Clipboard.SetImage(img);
4

2 に答える 2

5

Clipboard.SetImage画像コンテンツ (バイナリ データ) をファイル パスではなくクリップボードにコピーします。Windows エクスプローラーにファイルを貼り付けるには、コンテンツではなくクリップボードにファイル パス コレクションが必要です。

その画像ファイルのパスを に追加し、のメソッドをStringCollection呼び出すだけで、目的を達成できます。SetFileDropListClipboard

System.Collections.Specialized.StringCollection FileCollection = new System.Collections.Specialized.StringCollection();
FileCollection.Add(pnlContent_Picture_PictureBox.ImageLocation);
Clipboard.SetFileDropList(FileCollection);

これで、Windows Explorer などのどこにでもファイルを貼り付けることができます。

http://msdn.microsoft.com/en-us/library/system.windows.forms.clipboard.setfiledroplist.aspxの詳細情報Clipboard.SetFileDropList Method

于 2013-05-14T15:17:42.457 に答える