Данные пользовательского контроля не являются обязательными - PullRequest
1 голос
/ 22 декабря 2011

Пользовательский элемент управления для вида сетки данных в winforms

В моей библиотеке элементов управления Windows формы:

для MyGrid.cs (где MyGrid.cs - класс компонента)

public MyGrid: System.Windows.Forms.DataGridView

У меня есть некоторые свойства, установленные как

this.AlternatingRowsDefaultCellStyle.BackColor = System.Drawing.Color.Green;

this.BackgroundColor = System.Drawing.Color.White;

Я создаю и у меня есть MyGrid.dll, и я добавил это в свой набор инструментов Visual Studio (также упомянул, что DLL в моем приложении winform потребления).

Потребление winform приложения:

  1. В Form1.cs я перетаскиваю MyGrid и пишу этот код:
MyGrid1.DataSource=ds.Table[0]; //Dataset

Сетка не привязываетсяс записями, тогда как когда я проверяю DS row count it has 150 records.Сетка, однако, показывает мне зеленый и белый цвет (т.е. чередующийся цвет строки), но не привязывает данные.

Это код, который использует winform *

    DataSet ds  = null;
    string connectionString = "Data Source=test;Initial Catalog=DBname;Integrated Security=True";
    string sql = " SELECT ID,FirstName from table1 ";
    SqlConnection connection = null;            


     connnection = new SqlConnection(connectionString);
     SqlDataAdapter dataadapter = new SqlDataAdapter(sql, connection);
     ds= new System.Data.DataSet();
     connection.Open();
     dataadapter.Fill(ds, "Table1");

     MyGrid1.DataSource = ds.Tables[0];
     MyGrid1.DataBind();

где MyGrid1пользовательский элемент управления, который перетаскивается из панели инструментов.

Код пользовательского элемента управления:

this.AlternatingRowsDefaultCellStyle.BackColor = System.Drawing.Color.Green;
this.AlternatingRowsDefaultCellStyle.BackColor = System.Drawing.Color.Green;
this.AutoGenerateColumns=true;

Есть мысли?

...