2

クリップボード内の現在の (最新の) アイテムが文字列の場合、クリップボードから文字列を取得し、各単語を配列に入れたい (文字列から単語だけを取得するために、スペースと改行を削除する単純なループ) )。次に、配列内の各項目 (テスト目的で改行で区切られているとしましょう) を端末に出力したいだけです。

これは非常に簡単でシンプルです。私の問題は、C# に組み込まれている Clipboard クラスを見つけたり使用したりできないことです! アセンブリ参照として使用しているものは次のとおりです。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Object;
using System.Windows.Clipboard;

System.Windows.Clipboard; に注意してください。並んでいないため、赤い下線が引かれます。これはなぜですか? http://msdn.microsoft.com/en-us/library/system.windows.clipboard.aspxには、クリップボード クラスの情報が表示されます。

それはおそらく私の側の障害ですが、それ以外の場合は、パスを正しく設定していない可能性がありますか? Visual Studio 2012 For Desktop SP3をインストールしました (ただし、かなり長い間 VS2012 for Web を使用しており、正常に動作しています)。

4

6 に答える 6

2

System.Windows.Clipboardは名前空間ではなくクラスであるため、クラスを using ディレクティブに配置しても意味がありません。

コンパイラのエラー メッセージは同じことを示しているはずです。

于 2013-09-07T19:16:12.363 に答える
1

これがあなたに役立つことを願っています

http://blog.another-d-mention.ro/programming/c/use-clipboard-copypaste-in-c-console-application/

C# コンソール アプリケーションでクリップボード関数を使用する方法を示します。

于 2013-09-07T19:26:33.593 に答える
0

この行は必要ありません using System.Windows.Clipboard;。using ステートメントは名前空間用であり、Clipboard はクラスです。そのクラスはアセンブリ PresentationCore.dll から提供されます。WPF プロジェクトがあるため、プロジェクトには既にそれへの参照があります。

于 2013-09-07T19:16:05.363 に答える
0

System.Windowsクラスが含まれている名前空間のみを参照する必要がありますClipboard。そこからデータを設定および取得できます

System.Windows.Clipboard.SetData();
于 2013-09-07T19:17:01.257 に答える
0

名前空間の宣言が必要です。

using System.Windows.Forms;

または WPF の場合:

using System.Windows;

正確な文字列をコピーするには

var dataObject = System.Windows.Clipboard.GetDataObject();
string text= dataObject.GetData("UnicodeText", true).ToString();
于 2013-09-07T20:12:28.830 に答える