datagridview的一个问题 通过双击datagridview的某行弹出一个newform,从而对datagridview的该行数据进行修改,可在newform电击保存后,怎么样可以让datagridview同时自动更新数据呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以在newform 保存事件中引用原form中的修改事件,就可以实现。 单击一行信息的时候 首先 要调用 一个单击时间 点击DataGridView引发事件!事件里面写: 假如 public static string i = ""; //这个全局变量在 要new出的新窗口 类里 调用 你要点击一行 对应的主键! 然后 把这个全局变量得到数据库的 主键 在查询 到 你要修改信息的 窗口! 用DataReader读出来!! 在 重新指定 Command 更新 语句 保存起来!! 能不能说得具体点?newform 保存事件要怎么才能作用原form中的修改事件? public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { for (int i = 0; i < 3; i++) { DataGridViewRow row = dataGridView1.Rows[dataGridView1.Rows.Add()]; row.Cells[0].Value = 1; row.Cells[1].Value = 2; } } private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { e.Node.Toggle(); } private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { if (e.RowIndex == -1) return; Form2 f = new Form2(); if (f.ShowDialog(this) == DialogResult.OK) { dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = f.Value; } }窗体2事件 C# codepublic partial class Form2 : Form { private string value = ""; public Form2() { InitializeComponent(); } public string Value { get { return value; } } private void button1_Click(object sender, EventArgs e) { value = textBox1.Text; this.DialogResult = DialogResult.OK; } } "怎么样可以让datagridview同时自动更新数据呢?"--------------你先把datagridview控件传到newform那边去,保存完了之后再保定传过来的那个datagridview比如说传到newform中的datagridview Dgv;Dgv.DataSource = ds.Tables[0].DefaultView;//这里是填充Dgv,ds就是dataset这样最原始的那个datagridview也就更新了 public void refreshDgv (){ dgv.Datasource="重新拿一次数据";}private void Dgv_DoubleClick(,,){ newform f=new newform (this); f.show();}//--------------就象查询窗体一样,点查找某文字后,下面就有显示了 在newform 的BUTTON事件中{ 先保存数据; Form1 .refreshDgv ();} 初识HTML 推荐给同时需要用(或者会用)Eclipse与VS两种IDE的朋友一个VS插件 在webform中使用traceBar 使用代理方式实现的AOP中,如何实现当方法被拦截时,访问方法所属的对象。 请问listview控件中如何读取每一行的值 DataRow的疑问 请问如何读出MP3的信息?还有AVI等等一些媒体文件的信息! 高手帮我 Winform MSChart 画K线问题 C#如何控制音量? 数据强转问题! 关于C#操作两台显示器的问题,高手帮帮忙.
事件里面写:
假如 public static string i = ""; //这个全局变量在 要new出的新窗口 类里 调用 你要点击一行 对应的主键! 然后 把这个全局变量得到数据库的 主键 在查询 到 你要修改信息的 窗口! 用DataReader读出来!!
在 重新指定 Command 更新 语句 保存起来!!
能不能说得具体点?newform 保存事件要怎么才能作用原form中的修改事件?
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
for (int i = 0; i < 3; i++)
{
DataGridViewRow row = dataGridView1.Rows[dataGridView1.Rows.Add()];
row.Cells[0].Value = 1;
row.Cells[1].Value = 2;
} } private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
e.Node.Toggle();
} private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == -1)
return; Form2 f = new Form2();
if (f.ShowDialog(this) == DialogResult.OK)
{
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = f.Value;
}
}
窗体2事件 C# code
public partial class Form2 : Form
{
private string value = "";
public Form2()
{
InitializeComponent();
} public string Value
{
get { return value; }
} private void button1_Click(object sender, EventArgs e)
{
value = textBox1.Text;
this.DialogResult = DialogResult.OK;
}
}
--------------
你先把datagridview控件传到newform那边去,保存完了之后再保定传过来的那个datagridview比如说传到newform中的datagridview Dgv;Dgv.DataSource = ds.Tables[0].DefaultView;//这里是填充Dgv,ds就是dataset这样最原始的那个datagridview也就更新了
{
dgv.Datasource="重新拿一次数据";
}private void Dgv_DoubleClick(,,)
{
newform f=new newform (this);
f.show();
}//--------------就象查询窗体一样,点查找某文字后,下面就有显示了 在newform 的BUTTON事件中
{
先保存数据;
Form1 .refreshDgv ();
}