2015-06-20 81 views
0

這可能是一個不問問題的問題,但希望有人有答案。我只是想把文本追加到textview的末尾(在這種情況下是'log'),下面的代碼可以工作;Textview緩衝區插入警告

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) 

回答

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"); 

是有點清潔,放置換行符在字符串也工作的開始。

+0

真棒,謝謝你,幫助很多。 – Marky