设置 CommandField 从 aspx 页面选择可见性
我想用 GridView 做这样的事情:
<asp:CommandField ShowSelectButton="True" Visible='<%# return Eval("SC_TABLE") %>' />
但这不起作用,出现错误:
数据绑定表达式仅 支持具有 数据绑定事件。 System.Web.UI.WebControls.CommandField 没有 DataBinding 事件。
无论如何,我可以设置 aspx 页面的可见性吗? PS:SC_TABLE 存在于数据源中,因此该部分没有任何问题。
I want to do something like this with a GridView:
<asp:CommandField ShowSelectButton="True" Visible='<%# return Eval("SC_TABLE") %>' />
But that doesn't work, coming up with error:
Databinding expressions are only
supported on objects that have a
DataBinding event.
System.Web.UI.WebControls.CommandField
does not have a DataBinding event.
Is there anyway I can set the visibility from the aspx page?
PS: SC_TABLE exists from the datasource, so nothing wrong from that part.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我在这篇文章的末尾找到了答案:
基本上,你需要捕获 DataGrid
OnRowCreated="GridView1_RowCreated"
上的 RowCreated 事件然后,在 aspx.cs 页面上使用以下代码隐藏控件:
如果第一列中有 CommandField,则该方法有效。
I found the answer at the end of this post:
Basically, you need to capture the RowCreated event on the DataGrid
OnRowCreated="GridView1_RowCreated"
Then, on the aspx.cs page use the following code to hide controls:
It works if you have a CommandField in the first column.
你可以用 TemplateField 来做到这一点......
You could do this with a TemplateField instead...