DataGrid一个奇怪的问题!

adoxcy 2008-11-06 11:12:29
在开始初始化打datagrid的时候,OnItemDataBound事件里,可以显示或隐藏相应的控件
protected void DataBind_Click(object sender, DataGridItemEventArgs e)
{
string state = e.Item.Cells[4].Text.Trim();
if (state.Equals("通过"))
{
e.Item.FindControl("lbtEdit").Visible = false;
e.Item.FindControl("lbtCancel").Visible = false;
e.Item.FindControl("lbtUpdate").Visible = false;
e.Item.FindControl("lbtDelete").Visible = false;
}
else if (state.Equals("待审核"))
{
e.Item.FindControl("lbtISCancel").Visible = false;
e.Item.FindControl("lbtCancel").Visible = false;
e.Item.FindControl("lbtUpdate").Visible = false;
}

}


但是当我点编辑按钮的时候又要对相应的按钮进行显示或隐藏,它就不行了呢,但编辑时间的e里照样有e.Item.FindControl这个方法
//编辑事件
protected void Edit_Click(object sender, DataGridCommandEventArgs e)
{

e.Item.FindControl("lbtEdit").Visible = false;

e.Item.FindControl("lbtCancel").Visible = true;
e.Item.FindControl("lbtUpdate").Visible = true;
e.Item.FindControl("lbtDelete").Visible = false;
dgOderList.EditItemIndex = e.Item.ItemIndex;
GetOderList();
}

这些控件都在模板里啊
...全文
100 19 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
adoxcy 2008-11-06
  • 打赏
  • 举报
回复
自己搞定了,还是多想了下!唉
liye9801 2008-11-06
  • 打赏
  • 举报
回复
MARK 关注一下...
hanqingyu 2008-11-06
  • 打赏
  • 举报
回复
up
takako_mu 2008-11-06
  • 打赏
  • 举报
回复
那就在編輯后再綁定一次。
gengwanshanreally 2008-11-06
  • 打赏
  • 举报
回复
支持一下
adoxcy 2008-11-06
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 w161134025 的回复:]
在编辑事件里执行
string state = e.Item.Cells[4].Text.Trim();
if (state.Equals("通过"))
{
e.Item.FindControl("lbtEdit").Visible = false;
e.Item.FindControl("lbtCancel").Visible = false;
e.Item.FindControl("lbtUpdate").Visible = false;
e.Item.FindControl("lbtDelete").Visible = false;
}
else if (state.…
[/Quote]
像这样了,还是没有用啊
w87162960 2008-11-06
  • 打赏
  • 举报
回复
學習
nealwike 2008-11-06
  • 打赏
  • 举报
回复
我认为编辑了还应该datagrid.bind()才行.
w161134025 2008-11-06
  • 打赏
  • 举报
回复
在编辑事件里执行
string state = e.Item.Cells[4].Text.Trim();
if (state.Equals("通过"))
{
e.Item.FindControl("lbtEdit").Visible = false;
e.Item.FindControl("lbtCancel").Visible = false;
e.Item.FindControl("lbtUpdate").Visible = false;
e.Item.FindControl("lbtDelete").Visible = false;
}
else if (state.Equals("待审核"))
{
e.Item.FindControl("lbtISCancel").Visible = false;
e.Item.FindControl("lbtCancel").Visible = false;
e.Item.FindControl("lbtUpdate").Visible = false;
}
adoxcy 2008-11-06
  • 打赏
  • 举报
回复
怎样启用啊
好像控件和datagrid都没有AutoPostBack
firev000 2008-11-06
  • 打赏
  • 举报
回复
点编辑按钮以后 ,页面回发,所以就又显示出来了
nihaobulo 2008-11-06
  • 打赏
  • 举报
回复
学习
jiang_jiajia10 2008-11-06
  • 打赏
  • 举报
回复
AutoPostBack
adoxcy 2008-11-06
  • 打赏
  • 举报
回复
那要怎样启用啊,是不是直接在datagrid中去启用,那我以后的取消事件也要做同样的操作,是不是都只要在datagrid中启用
adoxcy 2008-11-06
  • 打赏
  • 举报
回复
???
lihongdian 2008-11-06
  • 打赏
  • 举报
回复
因为编辑的时候没有启用AutoPostBack.
adoxcy 2008-11-06
  • 打赏
  • 举报
回复
这么多分都没人回答吗?
alanzhou 2008-11-06
  • 打赏
  • 举报
回复
所以要在OnItemDataBound 中判断dgOderList是否edit状态

alanzhou 2008-11-06
  • 打赏
  • 举报
回复
GetOderList();
时会执行OnItemDataBound

所以又被置回去了
对任何 Web 站点而言,最重要的要求就是能够准确而安全地发送和存储信息。这种信息可以是任何形式,包括信贷公司提供的信用卡资料到市场信息网站的民意投票结果。不管将 ASP.NET Web 页面用于何种目的,您迟早都会需要处理涉及数据库的访问、读取和写入数据以及一般的控制操作。 幸运的是,操纵 Web 应用程序的数据库比以前更容易。 .NET Framework 改进了开发复杂的 Web 站点的方式。 ASP.NET 对如何开发复杂和交互的 Web 站点作了重大的改进, ADO.NET 提供了强大而灵活的数据访问功能,从根本上改变了从 Web 应用程序中检索、处理和存储数据的方式。 本书将介绍如何创建能够支持数据的 ASP.NET 应用程序。本书根据一些实践经验进行编写,并列举了演示基础原理的代码示例。本书要求读者对 ASP.NET 和 C# 有一些基本的认识,如果对操纵数据库没有任何经验也没有关系,作者将指导每个过程,包括将 ASP.NET 页面与数据库连接,研究各种读取、处理和更新数据的方法。接下来研究所有涉及侧重于数据的 ASP.NET 编程的问题,包括一些高级的主题,例如使用存储过程和组件。本书还给出了案例分析,将前面几章讨论的内容都置于同一个环境中加以运用。 0.1 本书主要内容 第 1 章介绍创建数据驱动的 Web 站点的一般性概念。特别讨论了 Web 站点与数据之间的关系,在此过程中介绍了 ADO.NET 。在这一章的末尾,还为本书其余章节创建了一个开发环境,讨论了一些可能会遇到的问题。 到底什么是数据库呢?这似乎是个奇怪问题。第 2 章介绍了不同类型的数据库,如何设计它们,以及如何使用它们存储和检索信息。接下来又概述了 SQL 语言,并与 Microsoft 的数据库方案作了一个简单的比较。 了解了数据库以后,就需要学习如何将它们与 ASP.NET 代码连接。第 3 章首先概述了第 1 章提到的 ADO.NET ,阐明了需要掌握的重要术语。接着是创建和测试对 Northwind 示例数据库的连接,本书将通篇使用该数据库。本章演示了大量例子,演示如何连接不同的数据源,例如 Access , SQL Server , Excel 和 XML ,以便在任何开发环境中都游刃有余。 第 4 章通过一些例子,运用 DataReader 对象读取和显示数据。首先讨论了在 ASP.NET 和 ADO.NET 中处理数据的原理,在 ADO.NET 中引入了 Command 对象。然后介绍如何运用 DataReader 获取数据,接着将那些数据绑定到像单选按钮、复选框这样的不同控件上和最重要的 DataGrid 上。 第 5 章讨论了一个重要的 ADO.NET 对象: DataSet ,它用于存储和检索服务器上任何复杂形式的数据。在介绍完原理之后,使用大量的例子来演示使用 DataSet 的不同方法。 当然,我们并不总是读取其他人的数据,因此第 6 章介绍了如何在现有的数据库中创建自己的记录。该章的主题包括 ASP.NET 的验证控件,以及使用 Command 对象和 DataSet 对象实现插入记录。

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧