Thursday, February 18, 2010

DataGridView - Dynamically Seting up column styles

#region Person Class
public class Person
{
private String _code = String.Empty;
private String _name = String.Empty;
private String _address = String.Empty;
private String _faxNo = String.Empty;
private String _contactPerson = String.Empty;

public int ID
{
get { return _id; }
set { _id = value; }
}

public String Code
{
get
{
return _code;
}
set
{
_code = value;
}
}

public String Name
{
get
{
return _name;
}
set
{
_name = value;
}
}

public String Address
{
get { return _address; }
set { _address = value; }
}

public String FaxNo
{
get { return _faxNo; }
set { _faxNo = value; }
}

public String ContactPerson
{
get { return _contactPerson; }
set { _contactPerson = value; }
}

public void Fill(DataRow drPerson)
{
if (drPerson != null)
{
this.Code =
drPerson["code"].ToString();
this.Name =
drPerson["name"].ToString();
this.Address =
drPerson["address"].ToString();
this.FaxNo =
drPerson["faxno"].ToString();
this.ContactPerson =
drPerson["contactperson"].ToString();
}
}

public List GetAllPersons()
{
List persons = new List();
DataTable dtPerson = new DataTable();

using (SqlConnection conn = DataHelper.GetConnection())
{
using (SqlCommand comm = new SqlCommand())
{
comm.Connection = conn;
String getQuery = "SELECT id,code,name,address," +
"faxno,contactperson FROM person ORDER BY name";
comm.CommandText = getQuery;
comm.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter();
daConst.SelectCommand = comm;

try
{
connConst.Open();
daConst.Fill(dtPerson);

if (dtPerson.Rows.Count < 1)
{
foreach (DataRow drPerson in dtPerson.Rows)
{
Person objPerson = new Person();
objPerson.Fill(drPerson);
persons.Add(objClient);
}
}
}
catch (Exception ex)
{ throw ex; }
finally
{ comm.Dispose(); }
}
}
return persons;
}
}
#endregion


#region "Form Events"
private void FormView_Load(object sender, EventArgs e)
{
SetupGrid();
dgvPersons.DataSource = Person.GetAllPersons();
}


#region SetupGrid
///
/// SetupGrid
///
private void SetupGrid()
{
DataGridViewTextBoxColumn colCode = new DataGridViewTextBoxColumn();
colCode.HeaderText = "Code";
colCode.DataPropertyName = "Code";
colCode.Width = 50;

DataGridViewTextBoxColumn colName = new DataGridViewTextBoxColumn();
colName.HeaderText = "Name";

colName.DataPropertyName = "Name";
colName.Width = 250;

DataGridViewTextBoxColumn colAddressDet = new DataGridViewTextBoxColumn();
colAddressDet.HeaderText = "Address";
colAddressDet.DataPropertyName = "Address";
colAddressDet.Width = 300;

DataGridViewTextBoxColumn colFaxNo = new DataGridViewTextBoxColumn();
colFaxNo.HeaderText = "FaxNo";
colFaxNo.DataPropertyName = "FaxNo";
colFaxNo.Width = 50;

DataGridViewTextBoxColumn colContactPerson = new DataGridViewTextBoxColumn();
colContactPerson.HeaderText = "ContactPerson";
colContactPerson.DataPropertyName = "ContactPerson";
colContactPerson.Width = 100;

DataGridViewButtonColumn colEdit = new DataGridViewButtonColumn();
colEdit.HeaderText = "Edit";
colEdit.FlatStyle = FlatStyle.Flat;
colEdit.UseColumnTextForButtonValue = true;
colEdit.Text = "Edit";
colEdit.Width = 50;

DataGridViewButtonColumn colDelete = new DataGridViewButtonColumn();
colDelete.HeaderText = "Delete";
colDelete.FlatStyle = FlatStyle.Flat;
colDelete.UseColumnTextForButtonValue = true;
colDelete.Text = "Delete";
colDelete.Width = 60;

dgvClients.Columns.AddRange(new DataGridViewColumn[]
{ colCode, colName, colAddressDet, colFaxNo,
colContactPerson, colEdit, colDelete });
}
#endregion
#endregion

No comments:

Post a Comment