我有一个带有一堆列的 Janus Grid。我目前具有分组功能,只需将列拖到顶部,我就可以根据任何列对网格进行分组。
假设我按“国家”列分组。现在我从视图中删除“国家”列。在这一点上,我仍然有按“国家”分组的网格。现在,当我将按国家/地区的组拖到网格外以删除分组时,我的应用程序崩溃了。
我得到以下崩溃日志。
请帮忙。顺便说一句,Janus 文档很烂。
************** Exception Text **************
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.Collections.ArrayList.get_Item(Int32 index)
at Janus.Data.JanusCollectionBase.System.Collections.IList.get_Item(Int32 index)
at Janus.Data.JanusGroupCollectionBase.BaseGet(Int32 index)
at Janus.Windows.GridEX.GridEXTable.f(Graphics , GridEXRow , JanusRow , GridEXFormatStyle , Int32 )
at Janus.Windows.GridEX.GridEX.a(Graphics , Boolean )
at Janus.Windows.GridEX.GridEX.a(Graphics )
at Janus.Windows.GridEX.GridEX.t()
at Janus.Windows.GridEX.GridEX.GetCellBounds(Int32 rowPosition, GridEXColumn column)
at Janus.Windows.GridEX.GridEX.bz()
at Janus.Windows.GridEX.Data.JNSAB.OnSuspendRowManagerIndex()
at Janus.Data.JanusRowManager.SuspendIndex()
at Janus.Data.DataSourceManager.a(JanusTableBase )
at Janus.Data.JanusTableBase.OnGroupSettingsChanged(CollectionChangeType change, JanusGroupBase group)
at Janus.Data.JanusTableBase.Janus.Data.ICollectionOwner.OnCollectionChanged(Object collection, CollectionChangeType change, Object item)
at Janus.Data.JanusCollectionBase.OnRemoveComplete(Int32 index, Object value)
at Janus.Windows.GridEX.GridEXGroupCollection.OnRemoveComplete(Int32 index, Object value)
at Janus.Data.JanusCollectionBase.System.Collections.IList.RemoveAt(Int32 index)
at Janus.Data.JanusCollectionBase.System.Collections.IList.Remove(Object value)
at Janus.Windows.GridEX.GridEXGroupCollection.Remove(GridEXGroup group)
at Janus.Windows.GridEX.GridEX.c(Boolean )
at Janus.Windows.GridEX.GridEX.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)