Example #1
0
        /// <summary>
        /// Grid 컬럼의 Header를 생성해서 추가한다.
        /// </summary>
        /// <param name="header"></param>
        public void SetHeader(HeaderBuilder headerBuilder)
        {
            if (grid == null)
            {
                grid = new WANI_Grid.Grid.Grid();
            }
            if (headerBuilder != null)
            {
                grid.HeaderGen   = headerBuilder.HeaderGen;
                topHeaderHeight  = headerBuilder.HeaderGen.TopHeaderHeight;
                grid.DicWeekDay  = headerBuilder.DicWeekDay;
                grid.DicMonthDay = headerBuilder.DicMonthDay;
            }

            grid.GridDisplayType = headerBuilder.GridDisplayType;
            grid.TopHeaderHeight = headerBuilder.HeaderGen.TopHeaderHeight;
            InitializeScollBar();

            //dataSource가 null일 경우 Header정보를 근간으로 DataTable 생성
            if (dataSource != null)
            {
                dataSource.Clear();
                dataSource = null;
                rows.Clear();
                rowHeight = 0;
                rowsCount = 0;
                selectedCols.Clear();
                selectedRows.Clear();
                allRowsHeight      = 0;
                vScrollBar.Maximum = allRowsHeight;
                firstVisibleCol    = 0;
                lastVisibleCol     = 0;
                firstVisibleRow    = 0;
                lastVisibleRow     = 0;
            }

            if (dataSource == null)
            {
                dataSource = new DataTable();
                foreach (Header hd in grid.HeaderGen.GetHeaders())
                {
                    dataSource.Columns.Add(new DataColumn(hd.ColumnId, typeof(string)));
                }
            }
        }
Example #2
0
 public WANIGrid()
 {
     InitializeComponent();
     if (grid == null)
     {
         grid = new WANI_Grid.Grid.Grid();
     }
     rows = new RowCollection();
     hScrollBar.SmallChange = 1;
     rowHeight = Font.Height + 4;
     vScrollBar.SmallChange = rowHeight;
     editBox             = new TextBox();
     editBox.BorderStyle = BorderStyle.None;
     editBox.BackColor   = Color.White;
     editBox.Font        = Font;
     editBox.Visible     = false;
     Controls.Add(editBox);
     //마우스 우측 버튼 클릭 시 제공되는 ContextMenu 초기화
     InitializeContextMenu();
 }