ASP.NET框架下的C#语言,如何选中GridView中某一行某一列的值?

比如我想点击“考评”(默认是“选择”,在GirdView中“启用选定内容”时出现),如何得到这一行的岗位号,并将这个岗位号赋值给Lable2?

大神看看的现在的代码有何问题?
是.NET4.0,最好是后台.cs里面的代码~感激不尽!
using那块是不是少了东西?因为所有Value它都不认啊~

第1个回答  推荐于2018-05-17
0.0软件卸载掉了,错了别介意,参考参考、
试着把
string asec=row.Cells[2].Value.Tosting();
当然如果岗位号是主键的话就直接
Lable2.Text=GridView1.DataKeys[e.newselectedindex].value.tostring();
你试下。
再不行可以参考一下GridView删除选中项的那段代码。追问

岗位号不是主键,岗位号和姓名只是数据表中两列。

系统不认Value,Values也不对。大神还有什么方法吗?

追答

0.0#~~0~~出乎意料~~~

本回答被提问者和网友采纳
第2个回答  2013-07-04
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
this.Label2.Text = this.GridView1.Rows[e.NewSelectedIndex].Cells[“岗位号"].Text.ToString();
}
后台刚加载的时候最好写一个句这个
if (!Page.IsPostBack)
{
return;
}
第3个回答  2013-07-03
string str=GridView1.Rows[e.NewSelectedIndex].Cells[0].text;//此为你要得到的选中行的第一列的数据

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
this.txtid.Text = this.GridView1.Rows[e.NewSelectedIndex].Cells[0].Text.ToString();
}追问

大神恕我愚昧啊,txtid是什么东西啊,是不是之前要定义啊?

追答

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
this.Label2.Text = this.GridView1.Rows[e.NewSelectedIndex].Cells[0].Text.ToString();
}

第4个回答  2013-07-04
在gridview事件里边的话应该是e.Values["UserName"].ToString().Trim() username是字段名追问

它不认那个Values

追答

string asec=e.Values["UserName"].ToString().Trim() 直接获取值

第5个回答  2013-07-03
代码没问题的说。。追问

就是点了“考评”,页面就好像刷新了一下,Label2也是可见的。之前令Label2.Text=afir 也不行。

在C# ASP.net 中怎么获取GridView控件选择行的内容
首先, 可以在GridView中增加一隐藏字段, 例如:<asp:LinkButton ID="btnStatus" runat="server" CommandName="Action" Visible="false" CommandArgument="<%# ((GridViewRow)Container).RowIndex %>"><\/asp:LinkButton> 这里主要设置行的Index.然后在GridView有一个RowCommand(object sender, GridViewComm...

c#,gridview中如何实现选中某列(如何选中一列数据呢),点击计算按钮就能...
首先设置dataGridView控件的属性SelectionMode为FullColumnSelect(选中整列)点击计算按钮的代码 private void button1_Click(object sender, EventArgs e){ List<double> ld = new List<double>(); foreach (DataGridViewTextBoxCell item in dataGridView1.SelectedCells) { ld.Add(Convert.To...

C#&ASP.NET中GridView删除一行数据的程序
直接在GridView1加Delete列也可以<asp:SqlDataSource ID="SqlDataSource1" runat="server"DeleteCommand="DELETE FROM [stuent] WHERE [StuID]=@StuID"SelectCommand="SELECT [StuID], [StuName], [Stupassword] FROM [stuent] "ConnectionString="<%$ ConnectionStrings:xueshengConnectionString %>" ...

c# 如何得到 datagridview 中某 一列最大值
比如某一列为int类型:int k = 0;for (int i = 0; i < GridView1.Rows.Count; i++){ if (i = 0) k = Convert.ToInt16(GridView1.Rows[i].Cells["XX"].Text);if (k < Convert.ToInt16(GridView1.Rows[i].Cells["XX"].Text)) k = Convert.ToInt16(GridView1.Rows[i].C...

asp.net(C#)获取GridView列总数
那个语句是没有错的,可以取到列数的,为零说明你取值的时候,GRIDVIEW并没有绑定完成,正在绑定中,你可以在GRIDVIEW的RowDataBound事件中加上 ClientScript.RegisterClientScriptBlock(this.GetType(), "test", "alert('" + this.GridView1.Columns.Count.ToString() + "')");测试,可以弹出列的值 ...

C# 想获取datagridview中cell改变得那行和列的值
希望对你有用!如下:在RowCommand事件中GridViewRow gvrow = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer); \/\/ 获取到行索引 RowIndex int index = gvrow.RowIndex; TextBox txtNo4 = (TextBox )grvView.Rows[index].Cells[4].FindControl("txtNo4"); TextBox ...

C#中循环读取GridView控件中值的问题
取单元格显示文本不是Value哦,应该是Text属性。double money = 0;foreach (DataGridViewRow Row in dvCost.Rows){ money += Convert.ToDouble(Row.Cells[3].Text);} lblMoney.Text = money.ToString();

C#点击datagridview某行就将某行显示到另一个datagridview怎么设置?
另一种方法是在第一个gridview中添加复选框。选择要添加到另一个gridview的行后,点击按钮遍历gridview,将被复选框选中的行的数据一起添加到datatable中。随后,直接将此datatable绑定到另一个gridview。实现此功能的关键在于遍历数据并将其添加到datatable中。这可以通过使用循环和datatable的相应方法完成...

C# GridView中单击某行
把你的复选框的列 gridviewcheckboxcolumnsgv=(gridviewcheckboxcolumns)datagrid.columns[0];(0是你的复选框那行 然后在单击事件里改变checked就行了

C#如何删除Gridview中一行数据
定义一个 String 或者是 int 类型的数据 str,然后 str=DataGridView1.Rows[(int)TextBox1.Text].Cells[某一个列的索引].ToString()下面来就是编写Sql 语句 ,Delete from 表名 where 字段名=str 最后进行一下数据绑定就可以了!

相似回答