社区
VB
帖子详情
vb.net Gridview RowCommand事件中 如何获取控件
chen380008006
2011-05-12 10:45:25
如题。。。。 CommandName 和 CommandArgument 属性已经被使用。
...全文
212
10
打赏
收藏
vb.net Gridview RowCommand事件中 如何获取控件
如题。。。。 CommandName 和 CommandArgument 属性已经被使用。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hykhym
2011-09-07
打赏
举报
回复
路过学习
chen380008006
2011-05-12
打赏
举报
回复
[Quote=引用 8 楼 zhangxiaomei_it 的回复:]
Dim rows As GridViewRow = CType(CType(e.CommandSource, Control).Parent.Parent,GridViewRow)
Dim str As String = CType(rows.FindControl("Textbox1"), TextBox).Text
[/Quote]
很好用没的说。
zhangxiaomei_it
2011-05-12
打赏
举报
回复
Dim rows As GridViewRow = CType(CType(e.CommandSource, Control).Parent.Parent,GridViewRow)
Dim str As String = CType(rows.FindControl("Textbox1"), TextBox).Text
gxingmin
2011-05-12
打赏
举报
回复
http://zhidao.baidu.com/question/75256788.html
你参考这个
chen380008006
2011-05-12
打赏
举报
回复
[Quote=引用 5 楼 gxingmin 的回复:]
这个是控件id,因为FindControl只能根据id查找,
[/Quote]
5555555 前辈 我是真不明白了 可否 给段代码啊 分都给你。。。。。
gxingmin
2011-05-12
打赏
举报
回复
这个是控件id,因为FindControl只能根据id查找,
chen380008006
2011-05-12
打赏
举报
回复
[Quote=引用 3 楼 gxingmin 的回复:]
方法2,
假设你在前台这样绑定的
CommandArgument='<%# Eval("ser_ID") + "|" + "LinkButton3" %>'
在后台你可以这样
string []s = e.CommandArgument.ToString().Split('|');
s[0]为你以前要绑定的e.CommandArgument值
gridView1.FindCont……
[/Quote]
LinkButton3 这个 字符串 我看作他是 value 还是控件ID 如果是 控件ID 我一样点不出来 控件中的values 可不可以我直接把value拼上
gxingmin
2011-05-12
打赏
举报
回复
方法2,
假设你在前台这样绑定的
CommandArgument='<%# Eval("ser_ID") + "|" + "LinkButton3" %>'
在后台你可以这样
string []s = e.CommandArgument.ToString().Split('|');
s[0]为你以前要绑定的e.CommandArgument值
gridView1.FindControl(s[1]); //你要找的控件LinkButton3
chen380008006
2011-05-12
打赏
举报
回复
[Quote=引用 1 楼 gxingmin 的回复:]
方法1:
e.Item.FindControl(控件id)
方法2:
把控件和其他信息连接在一起(中间用一个符号隔开)绑定给CommandArgument 属性,在后台再把CommandArgument 值根据隔开的那个符号拆分开来
[/Quote]
方法1: 事件源是 GridViewCommandEventArgs 没有 e.Item
方法2 我不会写 希望明细一点谢谢
gxingmin
2011-05-12
打赏
举报
回复
方法1:
e.Item.FindControl(控件id)
方法2:
把控件和其他信息连接在一起(中间用一个符号隔开)绑定给CommandArgument 属性,在后台再把CommandArgument 值根据隔开的那个符号拆分开来
GridView
编辑、添加和删除---
vb.net
、asp.net
asp.net
中
GridView
的编辑、添加和删除功能,采用vb语言进行编写。
ASP.NET
Gridview
隐藏/显示列源码
ASP.NET实现
Gridview
隐藏/显示列源码 介绍: 这篇文章演示如果让用户有显示/隐藏他们需要的
GridView
的列的功能,这是非常有用的,因为在
GridView
的所有列并不是每个的用户都需要的.用户想根据自己的需求看到想要的列.而不是显示一个巨大的
gridview
,霸占了整个屏幕,而是一个整洁的
Gridview
,而且它有所有你需要的列.对于页面的打印这也是一个非常有用的技术,因为用户可以灵活地选择
GridView
的列打印。 背景:
Row
Created 和ItemDataBound
事件
允许你用多种方式注入HTML, CSS,和JavaScript 来增强
GridView
控件
的功能。 文章将会演示两种显示和隐藏
GridView
列的方法,一种是客户端的方法,另外一种是服务段的方法. 在客户段显示和隐藏
GridView
的列 大部分代码是在
GridView
的
Row
Created
事件
生成客户端的功能的。当
GridView
的Header行被创建后,一个带负号的HyperLink被插入每个Header行的单元格
中
用来隐藏列。 这个hyperlink通过它的onclick
事件
调用一个HideCol的Javascript方法,CSS类用来增加负号的大小,当每个数据行被创建的时候,一个Id将会被添加到每行
中
用来让Javascript区分每一行. 代码 protected void
GridView
1_
Row
Created(object sender,
GridView
Row
EventArgs e) {
GridView
gridView
= (
GridView
)sender; StringBuilder sb = new StringBuilder(); // For the header
row
add a link to each header // cell which can call the HideCol javascript method if (e.
Row
.
Row
Type == DataControl
Row
Type.Header) { // Loop through each cell of the
row
for (int columnIndex = 0; columnIndex 0) { Label columnTextLabel = new Label(); columnTextLabel.Text = e.
Row
.Cells[columnIndex].Text; e.
Row
.Cells[columnIndex].Controls.Add(columnTextLabel); } } } // Give each
row
an id if (e.
Row
.
Row
Type == DataControl
Row
Type.Pager) e.
Row
.Attributes.Add("id",
gridView
.ClientID + "_pager"); else e.
Row
.Attributes.Add("id",
gridView
.ClientID + "_r" + e.
Row
.
Row
Index.ToString()); } SetupShowHideColumns方法
中
生成“Show Columns”下拉菜单的HTML,输出在Literal
控件
上面 。 代码 private void SetupShowHideColumns(
GridView
gridView
, Literal showHideColumnsLiteral) { StringBuilder sb = new StringBuilder(); sb.Append(""); sb.Append(""); sb.Append("- Show Column -"); showHideColumnsLiteral.Text = sb.ToString(); } 在数据绑定到
GridView
之后,其余的工作由ShowHideColumns.js
中
的javascript来完成.当列头的hyperlink被点击的时候后,它将会传递
GridView
的名字,列的索引和列名给HideCol方法,这个方法能找到这一列的每个单元格,每个单元格的将添加display:none样式,用来隐藏这一列. 当选择"Show Column"
中
的选项后,Javascript方法ShowCol将会被调用,它将移除每个单元格的display:none样式,这一列将会被再次显示. 在服务端显示/隐藏
GridView
的列 服务端的例子将通过
Row
Created
事件
给每个列头添加一个负号,这次是使用LinkButton
控件
.设置
Command
Name和
Command
Argument属性,这样当通过LinkButton引发
Row
Command
事件
时,相关的列都可以隐藏。以前隐藏的列索引存储在一个List
中
,这些列在建立时,将会被隐藏的。 代码 protected void
GridView
1_
Row
Created(object sender,
GridView
Row
EventArgs e) { // For the header
row
add a link button to each header // cell which can execute a
row
command
if (e.
Row
.
Row
Type == DataControl
Row
Type.Header) { // Loop through each cell of the header
row
for (int columnIndex = 0; columnIndex 0) { Label columnTextLabel = new Label(); columnTextLabel.Text = e.
Row
.Cells[columnIndex].Text; e.
Row
.Cells[columnIndex].Controls.Add(columnTextLabel); } } } // Hide the column indexes which have been stored in hiddenColumnIndexes foreach(int columnIndex in hiddenColumnIndexes) if (columnIndex 0) { this.
GridView
1ShowHideColumns.Visible = true; this.
GridView
1ShowHideColumns.Items.Add(new ListItem("-Show Column-", "-1")); foreach (int i in hiddenColumnIndexes) this.
GridView
1ShowHideColumns.Items.Add( new ListItem(columnNames[i], i.ToString())); } else { this.
GridView
1ShowHideColumns.Visible = false; } } 示例项目的例子: 客户端的例子: •C#.NET - Client-side example accessing data stored in session. •C#.NET - Client-side example which includes: MasterPage, UpdatePanel,
GridView
editing, paging and sorting, accessing data via the SqlDataSource control. •
VB.NET
- Client-side example accessing data stored in session. 服务端的例子 •C#.NET - Server-side example accessing data stored in session. •C#.NET - Server-side example which includes: MasterPage, UpdatePanel,
GridView
editing, paging and sorting, accessing data via the SqlDataSource control. •
VB.NET
- Server-side example accessing data stored in session. 结论: 如果你想让你的用户能够显示和隐藏在ASP.NET
GridView
的列,那么这种技术可能是非常有用的。 原文:http://www.codeproject.com/KB/webforms/ShowHide
Gridview
Columns.aspx 作者:朱祁林 出处:http://zhuqil.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
GridView
上下移动行
事件
Grid上下移动行
事件
可自己定制
事件
响应
GridView
控件
中
的按钮
事件
在单击
GridView
控件
中
的按钮时,将引发
Row
Command
事件
。
GridView
控件
具有内置功能,用于进行编辑、删除和分页等操作。 还可以添加按钮并使用
Row
Command
事件
向
控件
添加自定义功能。 可以通过下面的方式向
GridView
控件
添加自定义功能: 向
GridView
控件
添加 ButtonField 字段。 向
GridView
控件
中
的模板添加 Button、LinkButton 或 ImageButton
控件
。 可以使用
事件
参数的
Command
Name 属性在
事件
处理程序方法
中
标识按钮的功能。 如果使用的是 ButtonField 或 TemplateField 对象,则还可以使用
Command
Argument 属性来标识当前行。 使用的是 ButtonField 对象时,
Command
Argument 属性自动设置为行索引。 使用的是 TemplateField 对象时,
控件
不会自动设置
Command
Argument 属性。 在这种情况下,如果必须在
事件
处理程序
中
确定行索引,则可以使用数据绑定表达式将该按钮的
Command
Argument 属性设置为行索引。 响应
GridView
控件
中
的按钮
事件
将按钮的
Command
Name 属性设置为标识其功能的字符串,如“打印”或“复制”。 如果使用的是 TemplateField 对象并且必须在
事件
处理程序方法
中
访问行索引,则将按钮的
Command
Argument 属性设置为标识当前行的表达式。 下面的示例演示如何将 TemplateField 列
中
某个按钮的
Command
Argument 属性设置为当前行索引。 在该示例
中
,该列包含一个显示购物车的 Button
控件
。 VBC#C++F#JScript 复制不支持该语言或没有可用的代码示例。 VBC#C++F#JScript 复制
CommandName="AddToCart"
Command
Argument="" Text="Add to Cart" /> 为
GridView
控件
的
Row
Command
事件
创建一个方法。 在该方法
中
,执行下列操作: 检查
事件
参数对象的
Command
Name 属性来查看传入什么字符串。 如果需要,使用
Command
Argument 属性检索包含该按钮的行的索引。 为用户单击的按钮执行相应的逻辑。 下面的示例演示响应
GridView
控件
中
的按钮单击的方法。 在该示例
中
,TemplateField 列
中
的按钮发送命令“AddToCart”。
Row
Command
事件
处理程序确定被单击的按钮。 如果被单击的是购物车按钮,则代码执行相应的逻辑。
ASP.NET使用
gridview
获取
当前行的索引值
主要介绍了ASP.NET使用
gridview
获取
当前行的索引值的方法汇总,有需要的小伙伴可以参考下。
VB
16,722
社区成员
110,526
社区内容
发帖
与我相关
我的任务
VB
VB技术相关讨论,主要为经典vb,即VB6.0
复制链接
扫一扫
分享
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章