这可能是一个无聊的问题,但希望有人有答案。我只是尝试将文本附加到textview的末尾(在这种情况下为“log”),以下代码可以正常工作;
log.Buffer.Insert (log.Buffer.EndIter, "\n TCPserver>>Simple Constructor");
但是我得到一个警告我会喜欢摆脱,因为我在很多不同的地方这样做;
Warning CS0618: 'Gtk.TextBuffer.Insert(Gtk.TextIter, string)' is obsolete: 'Replaced by 'ref TextIter iter' overload' (CS0618) (bubbles)
答案 0 :(得分:1)
您所要做的就是为TextIter创建一个局部变量,然后将Insert函数传递给它。这是一段应该有效的代码片段,我在其中一个项目中做了类似的事情:
var tb = log.Buffer;
var ti = tb.GetIterAtLine (tb.LineCount);
tb.Insert (ref ti, "TCPserver>>Simple Constructor\n");
我也在字符串开头用换行符尝试了这段代码,但这对我没用。
编辑:
var ti = log.Buffer.EndIter;
log.Buffer.Insert (ref ti, "\n TCPserver>>Simple Constructor");
有点干净,将换行符放在字符串的开头也行。