Написать класс, который изменяет свойства компонента DataGridView - C#

Узнай цену своей работы

Формулировка задачи:

У меня на форме размещено 3 пустых компонента DataGridView, хочу создать класс который позволит мне быстро изменять свойства данных компонентов - Ширину, высоту, положение на форме, а также изменять заголовки столбцов и содержимое ячеек. Написал такой класс:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.Windows.Forms;
using System.Drawing;
 
namespace COMPortCSharp
{
    class WriteToDataGreed
    {

        public DataGridView NewDataGridView;// 
        public string[] HeadersDataGrid;
        public int HeigthDataGrid;
        public int WidthDataGrid;
        public int LocationX;
        public int LocationY;
        public void creatDataGrid()
        {
 
            for (int i = 0; i < HeadersDataGrid.Length; i++)
            {
                NewDataGrid.Columns[i].Name = HeadersDataGrid[i];
            }
            NewDataGrid.Location = new Point(LocationX, LocationY);
            NewDataGrid.Height = HeigthDataGrid;
            NewDataGrid.Width = WidthDataGrid;
            int b = NewDataGrid.RowHeadersWidth;
            for (int i = 0; i < NewDataGrid.ColumnCount; i++)
                NewDataGrid.Columns[i].Width = (NewDataGrid.Width - b) / NewDataGrid.ColumnCount;
           
        }
 
        public WriteToDataGreed( DataGridView DataGridView, string[] Headers , int X, int Y, int H, int W)
        {
            HeadersDataGrid = Headers;
            HeigthDataGrid = H;
            WidthDataGrid = W;
            LocationX = X;
            LocationY = Y;
            NewDataGridView = DataGridView;
        }

    }
}
 
вызов из формы 
   string[] HedersDataGridPacket = new string[]
            {
                "TimeOut",
                "DeviceId",
                "Protocol",
                "DataId",
                "CNum",
                "Data",
                "CRC",
                "PacketByCOBS"
 
            };
 WriteToDataGreed WorkDataGrid = new WriteToDataGreed (dataGridPacketIn, HedersDataGridPacket , X,Y ,HEIGHT,WIDTH);
            WorkDataGrid.creatDataGrid();
На форме ничего не происходит, помогите решить проблему, как перерисовать компонент на форме с новыми параметрами?

Решение задачи: «Написать класс, который изменяет свойства компонента DataGridView»

textual
Листинг программы
            for (int i = 0; i < HeadersDataGrid.Length; i++)
            {
                NewDataGridView.Columns[i].Name = HeadersDataGrid[i];
            }
            NewDataGridView.Location = new Point(LocationX, LocationY);
            NewDataGridView.Height = HeigthDataGrid;
            NewDataGridView.Width = WidthDataGrid;
            int b = NewDataGridView.RowHeadersWidth;
            for (int i = 0; i < NewDataGridView.ColumnCount; i++)
                NewDataGridView.Columns[i].Width = (NewDataGridView.Width - b) / NewDataGridView.ColumnCount;
           
        }
       
        public WriteToDataGreed(DataGridView DataGridView, string[] Headers , int X, int Y, int H, int W)
        {
            HeadersDataGrid = Headers;
            HeigthDataGrid = H;
            WidthDataGrid = W;
            LocationX = X;
            LocationY = Y;
            //NewDataGridView = new NewDataGridView();
            NewDataGridView = DataGridView;
        }
 
 
 
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5
Похожие ответы