刚转接触winform 关于一个添加列的问题很不理解 在构造函数中绑定和在点击事件中绑定的区别是什么?代码如下 页面就一个dataGridView 和一个按钮
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// binddate();//如果把注释去掉 列的顺序就乱了
//列号就变为了 1、2、0 而如果这里不调用绑定只在点击时绑定列号就是 0、1、2 为什么啊
} private void button1_Click(object sender, EventArgs e)
{
binddate();
}
void binddate()
{
dataGridView1.Columns.Clear();
DataTable dt = new DataTable();
dt.Columns.Add("ID", Type.GetType("System.Int32"));
dt.Columns.Add("Name", Type.GetType("System.String"));
DataRow row;
for (int i = 0; i < 10; i++)
{
row = dt.NewRow();
row["Id"] =i;
row["Name"] = i+"wwww"+i;
dt.Rows.Add(row);
}
dataGridView1.DataSource = dt;
DataGridViewLinkColumn colum = new DataGridViewLinkColumn();
colum.UseColumnTextForLinkValue = true;
colum.HeaderText = "链接";
colum.Text = "链接";
colum.Name = "link";
colum.TrackVisitedState = true;
colum.LinkBehavior = LinkBehavior.HoverUnderline;
dataGridView1.Columns.Add(colum);
} private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
MessageBox.Show("列号:"+e.ColumnIndex);//输出点击的列号
}
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// binddate();//如果把注释去掉 列的顺序就乱了
//列号就变为了 1、2、0 而如果这里不调用绑定只在点击时绑定列号就是 0、1、2 为什么啊
} private void button1_Click(object sender, EventArgs e)
{
binddate();
}
void binddate()
{
dataGridView1.Columns.Clear();
DataTable dt = new DataTable();
dt.Columns.Add("ID", Type.GetType("System.Int32"));
dt.Columns.Add("Name", Type.GetType("System.String"));
DataRow row;
for (int i = 0; i < 10; i++)
{
row = dt.NewRow();
row["Id"] =i;
row["Name"] = i+"wwww"+i;
dt.Rows.Add(row);
}
dataGridView1.DataSource = dt;
DataGridViewLinkColumn colum = new DataGridViewLinkColumn();
colum.UseColumnTextForLinkValue = true;
colum.HeaderText = "链接";
colum.Text = "链接";
colum.Name = "link";
colum.TrackVisitedState = true;
colum.LinkBehavior = LinkBehavior.HoverUnderline;
dataGridView1.Columns.Add(colum);
} private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
MessageBox.Show("列号:"+e.ColumnIndex);//输出点击的列号
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货