picoe / Eto

Cross platform GUI framework for desktop and mobile applications in .NET
Other
3.54k stars 320 forks source link

Mac vs Windows different behavior of GridView #729

Open veremenko-y opened 7 years ago

veremenko-y commented 7 years ago

I have a grid and I've implemented the editing next row after the previous. It works on Windows with WPF backend.

grid = new GridView<Commission<string>>
{
    ShowHeader = true,
    Columns =
    {
        new GridColumn
        {
            HeaderText = "Name",
            Editable = false,
            DataCell = new TextBoxCell("Name")
        },
        new GridColumn
        {
            HeaderText = "Percentage",
            Editable = true,
            Width = 70,
            DataCell = new TextBoxCell()
            {
                Binding = Binding.Property<Commission<string>, string>(m => m.Percentage)
            }
        }
    }
};
grid.CellEdited += grid_CellEdited;
//...
void grid_CellEdited(object sender, GridViewCellEventArgs e)
{
    var item = e.Item as Commission<string>;
    if (item == null) return;
    var nf = new NumberFormatInfo { NumberDecimalSeparator = "." };
    decimal percentage;
    if (!decimal.TryParse(item.Percentage, NumberStyles.Any, nf, out percentage))
    {
        item.Percentage = string.Empty;
    }

    if (e.Row < (grid.DataStore.Count() - 1))
    {
        grid.BeginEdit(e.Row + 1, e.Column);
    }
}

But on a Mac it causes recursion and overflow.

Stack Trace
The requested operation caused a stack overflow.   at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_int_int_IntPtr_bool (intptr,intptr,int,int,intptr,bool)
  at MonoMac.AppKit.NSTableView.EditColumn (System.Int32 column, System.Int32 row, MonoMac.AppKit.NSEvent theEvent, System.Boolean select) [0x00053] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00024] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:void_objc_msgSendSuper_IntPtr_bool (intptr,intptr,intptr,bool)
  at MonoMac.AppKit.NSTableView.SelectRows (MonoMac.Foundation.NSIndexSet indexes, System.Boolean byExtendingSelection) [0x0004e] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at MonoMac.AppKit.NSTableView.SelectRow (System.UInt32 row, System.Boolean byExtendingSelection) [0x00007] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Controls.GridHandler`3[TControl,TWidget,TCallback].BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Grid.BeginEdit (System.Int32 row, System.Int32 column) [0x00006] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.MainForm.grid_CellEdited (System.Object sender, Eto.Forms.GridViewCellEventArgs e) [0x000a6] in <58ee86e5ffce4dd1a80e49badb3ee0f8>:0 
  at Eto.PropertyStore.TriggerEvent[T] (System.Object key, System.Object sender, T args) [0x0000e] in :0 
  at Eto.Forms.Grid.OnCellEdited (Eto.Forms.GridViewCellEventArgs e) [0x00006] in :0 
  at Eto.Forms.Grid+Callback+<>c__DisplayClass1_0.b__0 () [0x00000] in :0 
  at Eto.Platform.Invoke (System.Action action) [0x00007] in :0 
  at Eto.Forms.Grid+Callback.OnCellEdited (Eto.Forms.Grid widget, Eto.Forms.GridViewCellEventArgs e) [0x0001f] in :0 
  at Eto.Mac.Forms.Cells.TextBoxCellHandler+<>c__DisplayClass12_1.b__2 (System.Object sender, System.EventArgs e) [0x00094] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.ResignFirstResponder () [0x0001a] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean ResignFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.ObjCRuntime.Messaging:bool_objc_msgSendSuper (intptr,intptr)
  at MonoMac.AppKit.NSResponder.BecomeFirstResponder () [0x00027] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.Cells.EtoCellTextField.BecomeFirstResponder () [0x00000] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at (wrapper native-to-managed) System.Object:[Eto.Mac.Forms.Cells.EtoCellTextField:Boolean BecomeFirstResponder()] (MonoMac.Foundation.NSObject,MonoMac.ObjCRuntime.Selector)
  at (wrapper managed-to-native) MonoMac.AppKit.NSApplication:NSApplicationMain (int,string[])
  at MonoMac.AppKit.NSApplication.Main (System.String[] args) [0x0003c] in <4ad7b73036a54dc4b9f6a82e953afc73>:0 
  at Eto.Mac.Forms.ApplicationHandler.Run () [0x00034] in <8942de6bdd1240a8aeda8ed0880354c2>:0 
  at Eto.Forms.Application.Run (Eto.Forms.Form mainForm) [0x0002c] in :0 
  at Yv.AlbertaYarnProject.CommissionCalculator.Desktop.Program.Main (System.String[] args) [0x0005c] in <1f0a723b858c441d927b01a6d2ecac6b>:0 
cwensley commented 7 years ago

Thanks for reporting the issue!

veremenko-y commented 7 years ago

I found more things related to this bug.

void grid_CellEdited(object sender, GridViewCellEventArgs e)
{

    if (!Application.Instance.Platform.IsWpf)
    {
        if (e.Row < (grid.DataStore.Count() - 1))
        {
            grid.BeginEdit(e.Row + 1, e.Column); // stack overflow on MacOS
        }
    }
    else
    {
        if (e.Row < (grid.DataStore.Count() - 1))
        {
            grid.SelectedRows = new List<int> { e.Row + 1 }; // stack overflow on Windows
        }
    }
}
cwensley commented 7 years ago

For now, you could probably get around both issues by using Application.Instance.AsyncInvoke(). I'm not sure if that will end up being the official solution to this problem until I get time to investigate this.

veremenko-y commented 7 years ago

The code I posted is intentionally broken. I ended up using grid.BeginEdit(e.Row + 1, e.Column) for Windows and grid.SelectedRows = new List<int> { e.Row + 1 }; form MacOS (with extra Enter to start editing). It fine for me now, but just to let you know that issue exists and a little strange.

cwensley commented 7 years ago

Ok, good to know at least you have a workaround for now.