http://download.csdn.net/detail/happs/4562932
这个程序里。。运行以后点击btn1,以及进行Changed排序之后点击btn1所呈现的结果
求解~~

解决方案 »

  1.   

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;namespace WindowsFormsDGV
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }        private void Form1_Load(object sender, EventArgs e)
            {
                bin();
            }
            private void bin()
            {
                DataTable table = GetData();
                this.dataGridView1.AutoGenerateColumns = false;
                this.dataGridView1.DataSource = table;
            }
            private DataTable GetData()
            {
                DataTable dt = new DataTable();
                dt.Columns.Add("a", typeof(string));
                dt.Columns.Add("b", typeof(string));
                dt.Columns.Add("c", typeof(string));
                dt.Columns.Add("d", typeof(string));
                dt.Columns.Add("e", typeof(string));
                dt.Columns.Add("DZ",typeof (int));
                dt.Columns.Add("Changed", typeof(string));
                for (int i = 0; i < 5; i++)
                {
                    DataRow row = dt.NewRow();
                    row["a"] = (i + 1).ToString();
                    row["b"] = (i + 1).ToString();
                    row["c"] = (i + 1).ToString();
                    row["d"] = (i + 1).ToString();
                    row["e"] = (i + 1).ToString();
                    row["DZ"] =i;
                    row["Changed"] = DBNull.Value;
                    dt.Rows.Add(row);
                }
                return dt;
            }
            private void button1_Click(object sender, EventArgs e)
            {
                for (int i = 0; i < dataGridView1.Rows.Count; i++)
                {
                    dataGridView1.Rows[i].Cells["Changed"].Value = DBNull.Value;
                    if (Convert.ToString(dataGridView1.Rows[i].Cells["DZ"].Value) == "1")
                    {
                        dataGridView1.Rows[i].Cells["Changed"].Value = "1Changed";
                    }
                    else if (Convert.ToString(dataGridView1.Rows[i].Cells["DZ"].Value) == "3")
                    {
                        dataGridView1.Rows[i].Cells["Changed"].Value = "3Changed";
                    }
                }
            }
        }
    }