我试图从主要文本之外的其他帖子中设置textview的文本,所以我已经在构造函数中写了:
Thread myth = new Thread (new ThreadStart (set_txt));
myth.Start ();
当然set_txt是一个包含
的方法 textview1.Buffer.Text = "Whatever";
问题在于,当我运行代码时,大部分时间停止并发出错误:
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================
我该怎么办?
答案 0 :(得分:2)
您需要从GUI线程更新GTK#文本视图。您可以使用Gtk.Application.Invoke:
执行此操作 Gtk.Application.Invoke (delegate {
textview1.Buffer.Text = "Whatever";
});
答案 1 :(得分:1)
您需要从UI线程更新UI。只需使用Gtk.Application.Invoke
传递lambda或委托:
Gtk.Application.Invoke(() => { textview1.Buffer.Text = "Whatever"; });