クリップボードのデータが変更されるたびに検出しようとしています。ということで、タイマーをセットして継続的に変化をチェックするようにしていClipboard.GetText()
ます。
私は次のコードを使用しています:
public void WaitForNewClipboardData()
{
//This is in WPF, Timer comes from System.Timers
Timer timer = new Timer(100);
timer.Elapsed += new ElapsedEventHandler(
delegate(object a, ElapsedEventArgs b){
if (Clipboard.GetText() != ClipBoardData)
{
SelectedText.Text = Clipboard.GetText();
ClipBoardData = Clipboard.GetText();
timer.Stop();
}
});
timer.Start();
}
実行すると次のエラーが表示されます。
OLE 呼び出しを行う前に、現在のスレッドをシングルスレッド アパートメント (STA) モードに設定する必要があります。
誰かが理由を知っていますか?