如何将gridview中某行数据

如何将gridview中某行数据,第1张

decimal sum1 = decimalParse(GridView1Rows[0]Cells[2]TextToString());

获取第一行第三列的数据 如果你想获得整行的数据,

建议你先获取该行的主键,然后再到数据库中查询

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

1启用选择按钮

2datakeysName中填入主键字段名。

3双击GRIDVIEW控件

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)

{

TextBox1Text=GridView1SelectedRowCells[0]Text;//所选行的第一列的内容(注意:gridview中按钮所占的列,也要算到列数中)

TextBox2Text = GridView1SelectedRowCells[1]Text;//所选行的第二列的内容

//thisTextBox3Text=GridView1SelectedValueToString();//获取这行的主键数据,只要主键数据获得了,想怎样怎样!

}

你在GridView的属性中有个datakey看见没?在那里面填上你想获得值的属性,一般是主键,按钮点击的方法中写GridView1SelectedDataKey,这个就是你想要的值,根据这个值读出其他想要的值

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)

{

GridViewRow row = GridView1Rows[eNewSelectedIndex];

if (rowRowState == DataControlRowStateSelected)

{

thisLabel3Text = rowCells[1]TextToString();

thistxt1Text ="你好";

}

}

但txt1中都没有值,好象都没有触发这事件,为什么?

msdn中说,当单某一行的选择BUTTON后,触发GridView1_SelectedIndexChanging事件,因此,你可以在GridView中加入选择BUTTON,然后用

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)

{

thisResponseWrite(thisGridView1Rows[eNewSelectedIndex]Cells[4]Text);

}

我用的是vs2005帮你测试的,2005用的是DataGridView,是GridView的进化版,应该是差不多的,我在DataGridView上添加了一个RowEnter事件,也是楼主说的RowCommand事件相似,接着我添加了如下的语句;

private void rowEnter(object sender, DataGridViewCellEventArgs e)

{

DataGridView temp = (DataGridView)sender;

if (eRowIndex>=1)

MessageBoxShow(tempRows[eRowIndex-1]Cells[eColumnIndex]FormattedValueToString ());

}

用途很明显,是当你选择一行中的某格时,会显示上一行相应格的数据,也就是楼主说获取上一行的数据了,要获取上一行的所有数据,对cell进行相应的处理就可以了,唯一的问题就是DataGridView有的功能GridView可能会没有~~~

写完答案才发现,不清楚楼主是在什么平台上写那方面的程序,我上面介绍的是c#的~~~

这个哇,你在加一列,这一列是按钮,俺们显示名称就为选择,然后按钮的commandName值设置为selected,

dataKeyNames 设置成你的数据主键,然后在gridview的 Rowcommand事件里面通过 eCommandArgument获得主键值,然后数据库取数据

另一种就是启用选择行按钮(面板设置CommandField中),直接SelectedIndexChanged中去取值

<asp:GridView ID="GridView1 runat="server" AutoGenerateColumns="False"

Height="69px" Width="402px"

-- 注意这里 ------------

DataKeyNames="WS_MAID" >

---------------------

<Columns>

<asp:HyperLinkField DataTextField="WS_MailObject" HeaderText="主题" />

<asp:BoundField DataField="WS_Name" HeaderText="收件人" />

<asp:BoundField DataField="WS_MailSendDate" HeaderText="日期" />

<asp:TemplateField HeaderText="全选">

<ItemTemplate>

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

</ItemTemplate>

<HeaderTemplate>

<asp:CheckBox ID="quanxuan" runat="server" Text="全选" />

</HeaderTemplate>

</asp:TemplateField>

</Columns>

</asp:GridView>

后台代码:

for(int rowIndex = 0; rowIndex < GridView1RowsCount; rowIndex++)

{

CheckBox ch = (CheckBox)GridView1Rows[rowIndex]Cells[5]FindControl("xuanze");

if (chChecked)

{

string 邮件ID值 = GridView1DataKeys[rowIndex]ValueToString();

ResponseWrite(邮件ID值);//邮件ID即为 WS_MAID,如何得到这个WS_MAID

}

}

试一下吧,有问题留言

以上就是关于如何将gridview中某行数据全部的内容,包括:如何将gridview中某行数据、请问如何获得GridView选中行的每一列的信息、gridview如何通过按钮取得当前行的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/web/9293866.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存