datagridview's handling of unbound columns in c

  • 2021-06-28 13:41:51
  • OfStack

This article provides an example of how datagridview handles unbound columns in c#Share it for your reference.The implementation is as follows:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using datagridview1.DataSet1TableAdapters;
namespace datagridview1
{
 public partial class Form1 : Form
 {
  public Form1()
  {
   InitializeComponent();
  }
  private void Form1_Load(object sender, EventArgs e)
  {
   CustomersTableAdapter adapter = new CustomersTableAdapter();
   bindingSource1.DataSource = adapter.GetData();
   dataGridView1.AutoGenerateColumns = false;
   int newColIndex = dataGridView1.Columns.Add("CompanyName", "CompanyName");
   dataGridView1.Columns[newColIndex].DataPropertyName = "CompanyName";
   newColIndex = dataGridView1.Columns.Add("ContactName", "ContactName");
   dataGridView1.Columns[newColIndex].DataPropertyName = "ContactName";
   newColIndex = dataGridView1.Columns.Add("Phone", "Phone");
   dataGridView1.Columns[newColIndex].DataPropertyName = "Phone";
   newColIndex = dataGridView1.Columns.Add("Contact", "Contact");
   dataGridView1.CellFormatting += OnCellFormatting;
   dataGridView1.DataSource = bindingSource1;
  }
  private void OnCellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
  {
   if (e.ColumnIndex == dataGridView1.Columns["Contact"].Index)
   {
    e.FormattingApplied = true;
    DataGridViewRow row = dataGridView1.Rows[e.RowIndex];
    e.Value = string.Format("{0}:{1}", row.Cells["ContactName"].Value, row.Cells["Phone"].Value);
   }
  }
 }
}

I hope that the description in this paper will be helpful to everyone's C#program design.


Related articles: