问题描述
- c#对数据表格控件已选行记录的调用
- public partial class FrmMainfo : Form
{public FrmMainfo() { InitializeComponent(); } string connStr = ConfigurationManager.ConnectionStrings[""str""].ConnectionString; private void button2_Click(object sender EventArgs e) { FrmMadetail frmmadetail = new FrmMadetail(); frmmadetail.Show(); } private void FrmMainfo_Load(object sender EventArgs e) { comboBox2.SelectedIndex = 0; comboBox3.SelectedIndex = 0; string sql = ""select Idsbmcsbbhsbflsblxggxhazwzsccjsybmsycj from Information""; SqlConnection conn = new SqlConnection(connStr); SqlCommand cmd = new SqlCommand(sql conn); conn.Open(); DataTable dt = new DataTable(); SqlDataAdapter sda = new SqlDataAdapter(cmd); sda.Fill(dt); dataGridView1.DataSource = dt; } public class DvgData { public string id = """"; public string ID { get { return id; } set { id = value; } } } private void dataGridView1ListHeadText() { dataGridView1.Columns[0].HeaderText = ""编号""; dataGridView1.Columns[1].HeaderText = ""设备名称""; dataGridView1.Columns[2].HeaderText = ""设备编号""; dataGridView1.Columns[3].HeaderText = ""设备分类""; dataGridView1.Columns[4].HeaderText = ""设备类型""; dataGridView1.Columns[5].HeaderText =""规格型号""; dataGridView1.Columns[6].HeaderText =""安装位置""; dataGridView1.Columns[7].HeaderText =""生产厂家""; dataGridView1.Columns[8].HeaderText = ""使用部门""; dataGridView1.Columns[9].HeaderText = ""使用车间""; dataGridView1.Columns[10].HeaderText = ""外形尺寸""; dataGridView1.Columns[10].Visible = false; dataGridView1.Columns[11].HeaderText = ""总重""; dataGridView1.Columns[11].Visible = false; dataGridView1.Columns[12].HeaderText = ""总功率""; dataGridView1.Columns[12].Visible = false; dataGridView1.Columns[13].HeaderText = ""出厂编号""; dataGridView1.Columns[13].Visible = false; dataGridView1.Columns[14].HeaderText = ""制造日期""; dataGridView1.Columns[14].Visible = false; dataGridView1.Columns[15].HeaderText = ""使用日期""; dataGridView1.Columns[15].Visible = false; dataGridView1.Columns[16].HeaderText = ""购入日期""; dataGridView1.Columns[16].Visible = false; } private void button1_Click(object sender EventArgs e) { string azwz = """"; //定义一个string 类型的变量 azwz = comboBox3.SelectedItem.ToString(); string sbfl=""""; sbfl = comboBox2.SelectedItem.ToString(); string sqf = ""select * from Information where azwz = '"" +azwz.Trim() + ""'and sbfl = '"" +sbfl.Trim() + ""'""; SqlConnection conn = new SqlConnection(connStr); SqlCommand cmd = new SqlCommand(sqf conn); conn.Open(); DataTable dt = new DataTable(); SqlDataAdapter sda = new SqlDataAdapter(cmd); sda.Fill(dt); dataGridView1.DataSource = dt; this.dataGridView1ListHeadText(); } private void dataGridView1_CellClick(object sender DataGridViewCellEventArgs e) { if (e.RowIndex > 0) { int id = (int)dataGridView1.Rows[e.RowIndex].Cells[0].Value;//记录选中的ID号 } }}
}
public partial class FrmMadetail : Form
{public FrmMadetail() { InitializeComponent(); } string connStr = ConfigurationManager.ConnectionStrings[""str""].ConnectionString; FrmMainfo frmmainfo = new FrmMainfo(); private void FrmMadetail_Load(object sender EventArgs e) { string sqf = ""select * from Information where ID = 1""; SqlConnection conn = new SqlConnection(connStr); SqlCommand cmd = new SqlCommand(sqf conn); conn.Open(); DataTable dt = new DataTable(); SqlDataAdapter sda = new SqlDataAdapter(cmd); sda.Fill(dt); textBox1.Text = dt.Rows[0][1].ToString(); textBox2.Text = dt.Rows[0][2].ToString(); textBox3.Text = dt.Rows[0][3].ToString(); textBox4.Text = dt.Rows[0][4].ToString(); } 本人小白一个 现在需要把第一个窗体数据表格控件 选中的行 INT 记录下来 接着在 另外一个窗体LOAD事件中 利用这个记录值 用SQL语句进行查询 这个代码要如何实现呢 谢谢大家 初来咋到 全部自学啊 很辛苦
解决方案
如果没猜错的话,你要写数据编辑界面,很简单啊传值,然后根据参数进行查询、赋值
解决方案二:
这个操作过程大概是这样的:
选中或单击数据行新建一个编辑界面,编辑界面是固定的绘图格式,传给这个界面一个数据行的主键,根据这个主键搜索对应数据库中的数据,然后赋值给编辑界面中的控件。
我大致看了一下你的代码,我猜你可能是不知道怎么从数据行给编辑界面传值。
时间: 2024-07-28 14:09:20