我是Silverlight的新手,正在进行一些测试。在我的当前测试中,我尝试实时显示当前剪贴板内容。但是这段代码存在一些奇怪的行为:
namespace SilverlightTest
{
public partial class MainPage : UserControl
{
private Timer _timer;
public MainPage()
{
InitializeComponent();
var dispatcher_timer = new DispatcherTimer {Interval = new TimeSpan(0, 0, 0, 5)};
dispatcher_timer.Tick += new EventHandler(timer_Callback);
dispatcher_timer.Start();
}
private void timer_Callback(object state, EventArgs eventArgs)
{
current_clip_board.Content = Clipboard.GetText();
}
private void button1_Click(object sender, RoutedEventArgs e)
{
current_clip_board.Content = Clipboard.GetText();
}
}
}
按钮事件和定时器事件应该执行完全相同的动作。 但是它们并不一样!按钮可以正常工作,并将剪贴板文本设置到标签中,但是定时器会抛出异常:
问题是:为什么呢? :)不允许访问剪贴板
谢谢。
PS:我会打赌是线程问题。 :p