/// <summary>
        /// Initialize
        /// </summary>
        internal void Initialize()
        {
            if (m_grid.AllowInnerInsert && m_cm.AllowInsert)
            {
                m_insertionRow = new Xceed.Grid.InsertionRow();
                m_grid.FixedFooterRows.Insert(0, m_insertionRow);
                m_insertionRow.FitHeightToEditors     = true;
                m_insertionRow.RowSelector.MouseDown += new MouseEventHandler(InsertionRowSelector_MouseDown);
                foreach (Xceed.Grid.Cell cell in m_insertionRow.Cells)
                {
                    if (cell.CellEditorManager is Editors.MyComboBoxEditor)
                    {
                        (cell.CellEditorManager as Editors.MyComboBoxEditor).TemplateControl.DropDownDirection = Xceed.Editors.DropDownDirection.Up;
                    }
                    else if (cell.CellEditorManager is Editors.MyFreeComboBoxEditor)
                    {
                        (cell.CellEditorManager as Editors.MyFreeComboBoxEditor).TemplateControl.DropDownDirection = Xceed.Editors.DropDownDirection.Up;
                    }
                    else if (cell.CellEditorManager is Editors.MyOptionPickerEditor)
                    {
                        (cell.CellEditorManager as Editors.MyOptionPickerEditor).TemplateControl.DropDownDirection = Xceed.Editors.DropDownDirection.Up;
                    }
                }

                m_insertionRow.EditBegun += new EventHandler(m_insertionRow_EditBegun);
            }
            m_grid.ReadOnly = !(m_grid.AllowInnerEdit && m_cm.AllowEdit);

            if (!m_grid.AllowInnerEdit)
            {
                foreach (Xceed.Grid.DataCell cell in m_grid.DataRowTemplate.Cells)
                {
                    if (!(cell.ParentColumn is Columns.CheckColumn))
                    {
                        cell.ReadOnly = true;
                    }
                }
            }

            AddRowEvents();
            AddCellEvents();

            AddValidations();

            m_grid.GridHelper.ContextMenuStripForCell.Opening += new System.ComponentModel.CancelEventHandler(ContextMenuStripForCell_Opening);
        }
        /// <summary>
        /// Initialize
        /// </summary>
        internal void Initialize()
        {
            if (m_grid.AllowInnerInsert && m_cm.AllowInsert)
            {
                m_insertionRow = new Xceed.Grid.InsertionRow();
                m_grid.FixedFooterRows.Insert(0, m_insertionRow);
                m_insertionRow.FitHeightToEditors = true;
                m_insertionRow.RowSelector.MouseDown += new MouseEventHandler(InsertionRowSelector_MouseDown);
                foreach (Xceed.Grid.Cell cell in m_insertionRow.Cells)
                {
                    if (cell.CellEditorManager is Editors.MyComboBoxEditor)
                    {
                        (cell.CellEditorManager as Editors.MyComboBoxEditor).TemplateControl.DropDownDirection = Xceed.Editors.DropDownDirection.Up;
                    }
                    else if (cell.CellEditorManager is Editors.MyFreeComboBoxEditor)
                    {
                        (cell.CellEditorManager as Editors.MyFreeComboBoxEditor).TemplateControl.DropDownDirection = Xceed.Editors.DropDownDirection.Up;
                    }
                    else if (cell.CellEditorManager is Editors.MyOptionPickerEditor)
                    {
                        (cell.CellEditorManager as Editors.MyOptionPickerEditor).TemplateControl.DropDownDirection = Xceed.Editors.DropDownDirection.Up;
                    }
                }

                m_insertionRow.EditBegun += new EventHandler(m_insertionRow_EditBegun);
            }
            m_grid.ReadOnly = !(m_grid.AllowInnerEdit && m_cm.AllowEdit);

            if (!m_grid.AllowInnerEdit)
            {
                foreach (Xceed.Grid.DataCell cell in m_grid.DataRowTemplate.Cells)
                {
                    if (!(cell.ParentColumn is Columns.CheckColumn))
                    {
                        cell.ReadOnly = true;
                    }
                }
            }

            AddRowEvents();
            AddCellEvents();

            AddValidations();

            m_grid.GridHelper.ContextMenuStripForCell.Opening += new System.ComponentModel.CancelEventHandler(ContextMenuStripForCell_Opening);
        }