61,830
社区成员




private void DataGrid1_Click(object sender, EventArgs e//这里的响应要修改)
{
this.Textbox1.Text = this.DataGrid1.CurrentRow.Cells[0].Value.ToString();
this.TextBox2.Text = this.DataGrid1.CurrentRow.Cells[1].Value.ToString();
this.Textbox3.Text = this.DataGrid1.CurrentRow.Cells[2].Value.ToString();
//或者这样?this.Textbox3.Text textbox1.text=datagrid1.selecteditem.cells[1].text;
}
这个不适用于datagrid。因为CurrentRow不是DataGrid的属性。
DataGrid完全是一个Table结构的控件,DataGrid包含DataGridItem,每个DataGridItem又包含TableCell,那么,我们就可以在TableCell的某个控件中,利用控件的Parent来得到TableCell,再利用TableCell的Parent,就可以得到DataGridItem了。
protected void ddl_SelectedIndexChanged(object sender, System.EventArgs e) //一定要声明成protected或者public,不能是private的。
{
DropDownList ddl = (DropDownList)sender;
TableCell cell = (TableCell)ddl.Parent;
DataGridItem item = (DataGridItem)cell.Parent;
Response.Write(item.Cells[0].Text);
}
if (e.Item.RowType == DataControlRowType.DataItem)
{
e.Item.Attributes.Add("onclick", "rekey('" + e.Row.Cells[0].Text + "','" + e.Row.Cells[1].Text.Replace(" ", "") + "'");
e.Item.Attributes["style"] = "Cursor:hand";
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
int i;
for (i = -1; i < GridView1.Rows.Count; i++)
{
//首先判断是否是数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("onclick", "rekey('" + e.Row.Cells[0].Text + "','" + e.Row.Cells[1].Text.Replace(" ", "") + "'");
e.Row.Attributes["style"] = "Cursor:hand";
}
}
}
function rekey(num,name)
{
document.getElementById("txtNum").value=num;
document.getElementById("txtEName").value=name ;
}
if (e.RowIndex > -1)
{
string no = dgv.Rows[e.RowIndex].Cells[0].Value.ToString();
}
this.Textbox1.Text = this.DataGrid1.Items[this.DataGrid1.SelectedIndex].Cells[0].Value.ToString();
this.Textbox2.Text = this.DataGrid1.Items[this.DataGrid1.SelectedIndex].Cells[1].Value.ToString();
this.Textbox3.Text = this.DataGrid1.Items[this.DataGrid1.SelectedIndex].Cells[2].Value.ToString();