读书人

datagridview 有关问题。在线结贴

发布时间: 2013-10-31 12:03:52 作者: rapoo

datagridview 问题。在线等,在线结贴
问题:

我想在现有查询出来的datagridview 中的客户列中。我想选中某列,可以通过事件弹出一个针对此列客户名称详细订单的一个窗体。 请问该如何做。

datagridview  有关问题。在线结贴
[解决办法]
datagridview的cellclick事件,取到单元格找到value之后,弹出一个form(把id传过去),form里很多控件,通过id加载这条数据(ado.net sql查询)显示就可以了。
[解决办法]
DataGridView.CellEnter 事件
http://msdn.microsoft.com/zh-cn/library/system.windows.forms.datagridview.cellenter

*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
[解决办法]
你思路都那么明确了...双击事件new一个窗体,把客户名字传进新窗体的构造函数,然后就按你的查呗?是我理解错了么...
[解决办法]
currentcell.value
[解决办法]
试下这个_CellDoubleClick事件
private void dgv_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
if (dgv.Rows.Count < 1)
{
return;
}
else
{
DataRow row = selectrow();
string str = row["编号"].ToString();
Form1.f_from1.show(str); //这里不明白可参考http://blog.csdn.net/fosu_edu_cn/article/details/9451377
this.Close();
}
}

private DataRow selectrow()
{
DataRowView rv = (DataRowView)this.dgv.BindingContext[this.dgv.DataSource, this.dgv.DataMember].Current;
DataRow row = rv.Row;
return row;
}
不知道是不是你想要的,因为你说的列,我觉得是行.....
[解决办法]

private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
string names = Convert.ToString(this.dataGridView1.CurrentRow.Cells[0].Value.ToString());//你这样写也没错
BSXX bx = new BSXX();
bx.name=names;
bx.ShowDialog();
}


public string name { get; set; }
private void GetData(string selectCommand)
{
try
{

string connStr = "server=123.234.29.22,11111;database=TZYDB;uid=sa;pwd=aronwang;max pool size=32767";
SqlConnection Co = new SqlConnection(connStr);
// Create a new data adapter based on the specified query.
SqlDataAdapter dataAdapter = new SqlDataAdapter(selectCommand, Co);

// Create a command builder to generate SQL update, insert, and
// delete commands based on selectCommand. These are used to
// update the database.


SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);

// Populate a new data table and bind it to the BindingSource.
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
dataAdapter.Fill(table);
bindingSource1.DataSource = table;

// Resize the DataGridView columns to fit the newly loaded content.
dataGridView1.AutoResizeColumns(
DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
}
catch (SqlException)
{
MessageBox.Show("To run this example, replace the value of the " +
"connectionString variable with a connection string that is " +
"valid for your system.");
}
}
private void BSXX_Load(object sender, EventArgs e)
{
dataGridView1.DataSource = bindingSource1;
GetData("select * from cx where 售点名称 ='"+name+"'");
}

读书人网 >C#

热点推荐