
如上圖,在插入4行或者n行資料后,相同標識的行,不再插入,而是更新該標識行的資料。(標識唯一,標識為1、2、3.....)
private void Page_Channel_Load(object sender, EventArgs e)
{
uiDataGridView1.AddColumn("序號", "Column1").SetFixedMode(70);
uiDataGridView1.AddColumn("Station", "Column2");
uiDataGridView1.AddColumn("ECD(us)", "Column3");
uiDataGridView1.AddColumn("FLD(dBuV)", "Column4");
uiDataGridView1.AddColumn("Tran(us)", "Column5");
uiDataGridView1.AddColumn("Base(us)", "Column6");
uiDataGridView1.AddColumn("1SkyFLD", "Column7");
uiDataGridView1.AddColumn("1Delay(us)", "Column8");
uiDataGridView1.AddColumn("2SkyFLD", "Column9");
uiDataGridView1.AddColumn("2Delay(us)", "Column10");
uiDataGridView1.ReadOnly = true;
}
public class Data
{
public string Column1 { get; set; }
public string Column2 { get; set; }
public string Column3 { get; set; }
public string Column4 { get; set; }
public string Column5 { get; set; }
public string Column6 { get; set; }
public string Column7 { get; set; }
public string Column8 { get; set; }
public string Column9 { get; set; }
public string Column10 { get; set; }
public override string ToString()
{
return Column1;
}
}
//更新DataGridView的函式,
public void Update_chain_Info(LSCHM_Decode_T chain_info)
{
DataGridViewRow row = new DataGridViewRow();
row.CreateCells(uiDataGridView1);
//num為唯一識別符號,如果識別符號相同,則更新該行資料,而不是插入新行
row.Cells[0].Value = num.ToString();
row.Cells[1].Value = chain_info.period + " " + chain_info.state;
row.Cells[2].Value = chain_info.ecd;
row.Cells[3].Value = chain_info.fld;
row.Cells[4].Value = chain_info.transport_delay;
row.Cells[5].Value = chain_info.base_delay;
row.Cells[6].Value = chain_info.one_sky_fld;
row.Cells[7].Value = chain_info.one_sky_delay;
row.Cells[8].Value = chain_info.two_sky_delay;
row.Cells[9].Value = chain_info.two_sky_fld;
uiDataGridView1.Rows.Add(row);
}
如果這樣寫又報錯

求大神們幫忙給點思路什么的,或者參考例程,不管什么都可以,感謝感謝大家!
uj5u.com熱心網友回復:
我都沒完全看明白,你的完整需求。只說明了,表行的insert或update,是由行標識1、2、3、4來判斷。
如果標識相同,即為update,如果標識不存在,即為insert。
那我想問一句,那第一個圖是怎么理解,標識1234,出現3次相同的資料行?
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/277254.html
標籤:C#
