Я хотел бы написать пользовательский CellRenderer, который форматирует его содержимое. Вместо отображения -905.65000
он должен отображать -905.65 €
. Я уже мог добиться этого с помощью Gtk.TreeCellDataFunc
, но он был бы более изящным с пользовательским CellRenderer.Gtk.CellRendererText с форматом
После код дает ошибку сегментации:
class CellRendererTextFormat : Gtk.CellRendererText {
public new string text {
get { return text; }
set {
char[] a = new char[16];
text = double.parse(value).format(a,"%-.2f €");
}
}
public CellRendererTextFormat() {
GLib.Object();
}
}
Как я должен это делать вместо этого?
да, значение является строкой, что мне нужно, чтобы разобрать в два раза. Вы изменили переменную 'text' на' euro_value', я действительно хотел переопределить параметр 'text' из' Gtk.CellRendererText', иначе вы бы указали на отображение 'euro_value'? – jkd
Вы использовали 'new', поэтому в любом случае он не был бы переопределен. Вы должны разбираться вне настройки свойств, чтобы вы могли обрабатывать ошибки. Отредактировал код. – apmasell
Спасибо большое, что сработало. Просто нужно добавить «euro_value» в мои атрибуты столбцов ... ^^ " – jkd