示例#1
0
        private void DataColumnDialog_Load(object sender, System.EventArgs e)
        {
            if (m_DataTable == null)
            {
                throw new ApplicationException("DataTable is null");
            }

            if (m_TemplateColumns == null)
            {
                m_TemplateColumns = GridDataTable.GetColumnsFromDataTable(m_DataTable, true);
            }

            grid.Redim(m_DataTable.Columns.Count + 1, 3);
            grid.FixedRows = 1;
            grid.Selection.SelectionMode = SourceGrid2.GridSelectionMode.Row;

            grid[0, 0] = new Cells.Header("Visible");
            grid[0, 1] = new Cells.Header("Caption");
            grid[0, 2] = new Cells.Header("Order");

            int l_LastPosition = m_TemplateColumns.Length + 1;

            for (int c = 0; c < m_DataTable.Columns.Count; c++)
            {
                int  l_CurrentPosition = l_LastPosition;
                bool l_bVisible        = false;
                for (int j = 0; j < m_TemplateColumns.Length; j++)
                {
                    if (m_TemplateColumns[j].DataColumn == m_DataTable.Columns[c])
                    {
                        l_bVisible        = true;
                        l_CurrentPosition = j + 1;
                        break;
                    }
                }
                if (l_bVisible == false)
                {
                    l_LastPosition++;
                }
                grid[c + grid.FixedRows, 0]     = new Cells.CheckBox(l_bVisible);
                grid[c + grid.FixedRows, 0].Tag = m_DataTable.Columns[c];
                grid[c + grid.FixedRows, 1]     = new Cells.Cell(m_DataTable.Columns[c].Caption, typeof(string));
                grid[c + grid.FixedRows, 1].DataModel.AllowNull = false;
                grid[c + grid.FixedRows, 2] = new Cells.Cell(l_CurrentPosition);
            }

            Sort();

            grid.AutoStretchColumnsToFitWidth = true;
            grid.AutoSizeAll();
        }
示例#2
0
            public override void SetValue(SourceGrid2.Position p_Position, object p_Value)
            {
                GridDataTable l_GridDataTable = ((GridDataTable)Grid);

                System.Data.DataRow l_Row = (System.Data.DataRow)(l_GridDataTable.m_DataSelection[p_Position.Row - Grid.FixedRows]);
                if (p_Value == null)
                {
                    l_Row[m_DataColumn] = System.DBNull.Value;
                }
                else
                {
                    l_Row[m_DataColumn] = p_Value;
                }

                OnValueChanged(new SourceGrid2.PositionEventArgs(p_Position, this));
            }
示例#3
0
            public override object GetValue(SourceGrid2.Position p_Position)
            {
                GridDataTable l_GridDataTable = ((GridDataTable)Grid);

                System.Data.DataRow l_Row = (System.Data.DataRow)(l_GridDataTable.m_DataSelection[p_Position.Row - Grid.FixedRows]);
                object tmp = l_Row[m_DataColumn];

                if (System.DBNull.Value == tmp)
                {
                    return(null);
                }
                else
                {
                    return(tmp);
                }
            }