public bool PrepareCellForEdit(FlexGrid sender, GridPanel panel, CellRange range) { FlexGrid g = (FlexGrid)View.ViewWithTag(1); nuint i = (nuint)range.Col; Column col = g.Columns.GetItem <Column>(i); if (col.Binding == "Hired") { UITextField editor = (UITextField)g.ActiveEditor; UIDatePicker picker = new UIDatePicker(); NSDate d = (NSDate)g.GetCellData(range.Row, range.Col, false); picker.Opaque = true; picker.Mode = UIDatePickerMode.Date; picker.Date = d; picker.ValueChanged += picker_ValueChanged; editor.InputView = picker; UIToolbar toolbar = new UIToolbar(new CoreGraphics.CGRect(0, 0, View.Bounds.Width, 44)); toolbar.BarStyle = UIBarStyle.Default; picker.EditingDidEnd += picker_EditingDidEnd; UIBarButtonItem done = new UIBarButtonItem(UIBarButtonSystemItem.Done, picker_EditingDidEnd); UIBarButtonItem space = new UIBarButtonItem(UIBarButtonSystemItem.FlexibleSpace, null, null); toolbar.SetItems(new UIBarButtonItem[2] { space, done }, false); editor.InputAccessoryView = toolbar; editor.ClearButtonMode = UITextFieldViewMode.Never; } return(false); }
public bool FormatItem(FlexGrid sender, GridPanel panel, CellRange range, CGContext context) { FlexGrid g = (FlexGrid)View.ViewWithTag(1); nuint i = (nuint)range.Col; Column col = g.Columns.GetItem <Column>(i); if (col.Binding == "Money") { NSNumberFormatter f = new NSNumberFormatter(); f.NumberStyle = NSNumberFormatterStyle.Currency; Console.WriteLine(g.GetCellData(range.Row, range.Col, true)); NSNumber n; try { n = (NSNumber)g.GetCellData(range.Row, range.Col, false); } catch { n = f.NumberFromString(g.GetCellData(range.Row, range.Col, true).ToString()); } CoreGraphics.CGRect r = panel.GetCellRect(range.Row, range.Col); if (n.Int32Value > 90) { context.SetFillColor(UIColor.Green.CGColor); } else if (n.Int32Value < 60) { context.SetFillColor(UIColor.Red.CGColor); } context.FillRect(r); } return(false); }