C# 添加新列后,DataGridView中出现空值
我的Datagridview有一个名称列。我试图用datagridview添加一个图像列。一旦我添加了image列,它就会将name列设置为null。请参阅以下代码:C# 添加新列后,DataGridView中出现空值,c#,C#,我的Datagridview有一个名称列。我试图用datagridview添加一个图像列。一旦我添加了image列,它就会将name列设置为null。请参阅以下代码: public void call(string usr) { user = usr; queryString = "select NAME 'Name' from ADK_MY_PRODSYSSECGROUP"; try { specdataadapter = new SqlData
public void call(string usr)
{
user = usr;
queryString = "select NAME 'Name' from ADK_MY_PRODSYSSECGROUP";
try
{
specdataadapter = new SqlDataAdapter(queryString, con);
specds = new DataSet();
con.Open();
specdataadapter.Fill(specds, "REPORT_Table");
dgvdisp.DataSource = specds;
dgvdisp.DataMember = "REPORT_Table";
dgvdisp.Columns[dgvdisp.ColumnCount - 1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
con.Close();
if (user == "Secgrp")
{
DataGridViewImageColumn set = new DataGridViewImageColumn();
set.Name = "set";
set.HeaderText = "Settings";
dgvdisp.Columns.Insert(1, set);
for (int rows = 0; rows < dgvdisp.Rows.Count; rows++)
{
MessageBox.Show(dgvdisp.Rows[rows].Cells[0].Value.ToString());
}
}
}
catch (Exception ex)
{
DispMessageBox disp = new DispMessageBox("Fail to retrieve data. Please try again");
disp.ShowDialog();
}
}
public void calling()
{
SqlConnection con = new SqlConnection(connetionString);
for (int rows = 0; rows < dgvdisp.Rows.Count; rows++)
{
SqlCommand command = new SqlCommand("select SETTINGS from ADK_MY_PRODSYSSECGROUP where NAME='" + Convert.ToString(dgvdisp.Rows[rows].Cells[0].Value) + "'", con);
con.Open();
SqlDataReader reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
if (reader.GetInt32(0) == 1)
{
Image image = Properties.Resources.start;
//set.Image = image;
dgvdisp.Rows[rows].Cells["set"].Value = image;
}
if (reader.GetInt32(0) == 0)
{
Image image = Properties.Resources.finish;
//set.Image = image;
dgvdisp.Rows[rows].Cells["set"].Value = image;
}
}
}
reader.Close();
con.Close();
}
}
公共无效调用(字符串usr)
{
用户=usr;
queryString=“从ADK\u MY\u PRODSYSSECGROUP中选择名称'NAME';
尝试
{
specdataadapter=新的SqlDataAdapter(queryString,con);
specds=新数据集();
con.Open();
specdataadapter.Fill(specds,“报表”);
dgvdisp.DataSource=specds;
dgvdisp.DataMember=“报告表”;
dgvdisp.Columns[dgvdisp.ColumnCount-1].AutoSizeMode=DataGridViewAutoSizeColumnMode.Fill;
con.Close();
如果(用户==“Secgrp”)
{
DataGridViewImageColumn集合=新建DataGridViewImageColumn();
set.Name=“set”;
set.HeaderText=“设置”;
dgvdisp.Columns.Insert(1,集);
对于(int rows=0;rows
在调用方法中,dgvdisp datagridview显示值,但当我试图从调用方法中获取值时,在检索名称字段时,datagridview显示空值
请建议…我看不到您的代码中有任何地方在向新列添加值…嗨,BugFinder,我添加了图像列。请查看该if条件。