public string Text { get { return GetText (StartIter, EndIter, false); } set { gtk_text_buffer_set_text (Handle, value, System.Text.Encoding.UTF8.GetByteCount(value)); } } public void Clear () { Delete (StartIter, EndIter); } public Gtk.TextIter GetIterAtOffset(int char_offset) { Gtk.TextIter iter; gtk_text_buffer_get_iter_at_offset(Handle, out iter, char_offset); return iter; } // overload to paste clipboard contents at cursor editable by default. [DllImport("libgtk-win32-2.0-0.dll")] static extern void gtk_text_buffer_paste_clipboard (IntPtr raw, IntPtr clip, IntPtr iter, bool default_edit); public void PasteClipboard (Gtk.Clipboard clipboard) { gtk_text_buffer_paste_clipboard(Handle, clipboard.Handle, IntPtr.Zero, true); }