【发布时间】:2011-05-30 05:46:23
【问题描述】:
我试图检测每次剪贴板数据发生变化。因此,我设置了一个计时器并让它不断检查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) 模式。
有人知道为什么吗?
【问题讨论】:
标签: c# .net exception-handling clipboard sta