请问如何获得GridView选中行的每一列的信息?

请问如何获得GridView选中行的每一列的信息?,第1张

有很多种方式,因为gridview已经读出数据库的数据,所以我们只需要获取gridview中的数据即可,不用再连数据库了!

1.启用选择按钮。

2.datakeysName中填入主键字段名。

3.双击GRIDVIEW控件

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)

{

TextBox1.Text=GridView1.SelectedRow.Cells[0].Text//所选行的第一列的内容(注意:gridview中按钮所占的列,也要算到列数中)

TextBox2.Text = GridView1.SelectedRow.Cells[1].Text//所选行的第二列的内容

//this.TextBox3.Text=GridView1.SelectedValue.ToString()//获取这行的主键数据,只要主键数据获得了,想怎样怎样!

}

页面代码 :

<asp:GridView ID="dgvUser" runat="server" Width="254px"

AutoGenerateColumns="False">

<Columns>

<asp:TemplateField HeaderText="编号">

<ItemTemplate>

<asp:Label ID="lblId" Text='<%#Eval("id") %>' runat="server"></asp:Label>

</ItemTemplate>

</asp:TemplateField>

<asp:BoundField DataField="CourseName" HeaderText="课程名称" />

<asp:TemplateField HeaderText="选择">

<ItemTemplate>

<asp:CheckBox ID="chk" runat="server" />

</ItemTemplate>

</asp:TemplateField>

</Columns>

</asp:GridView>

<p>

<asp:Button ID="btnOk" runat="server" Text="确定" onclick="btnOk_Click" />

</p>

<p>

<asp:Label ID="lblInfo" runat="server" Text=""></asp:Label>

</p>

后台代码:

protected void Page_Load(object sender, EventArgs e)

{

if (!Page.IsPostBack)//必须加这个,否则取不到值

{

getData()

}

}

private void getData()

{

///读取表Course中的值并显示,表Course中有两列,列名分别是id,courseName

///注意修改数据源名称(.\SQL2008)为你自己的数据库实例名,一般直接写成.

///注意修改数据库连接的用户名与密码

///表Course自己建立

string str=@"Data Source=.\SQL2008Initial Catalog=tempUser ID=sapwd=123456"

SqlConnection conn = new SqlConnection(str)

conn.Open()

SqlCommand cmd = new SqlCommand("select * from Course", conn)

SqlDataAdapter adapter = new SqlDataAdapter(cmd)

DataTable dt = new DataTable()

adapter.Fill(dt)

dgvUser.DataSource = dt

dgvUser.DataBind()

conn.Close()

}

protected void btnOk_Click(object sender, EventArgs e)

{

string ids = ""

foreach (GridViewRow row in dgvUser.Rows)

{

CheckBox chk = row.FindControl("chk") as CheckBox

if (chk.Checked)

{

Label lbl = row.FindControl("lblId") as Label

ids += lbl.Text + ","

}

}

///ids就是最终所选择的记录编号用逗号隔开之后组成的字符串,记住该值最后有一个逗号,在处理时记得将其去掉。如果ids保持为"",则表明用户没有选择任何一个记录

lblInfo.Text = "得到的编号是" + ids

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10002064.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存