实训第五周·周记

2009-08-11  籽藤 

 现在头有点痛,还是决定写这篇周记,做个总结。

 这一周过得很窝火,一直在研究ListView内嵌DetailsView实现证书管理。由于之前已经用DetailsView实现增删改查,所以想当然地认为这一部分的工作能很快做好(是的,就像你想得那样,我做得很不顺利,控件的使用让我觉得非常被动)。OK,来说说我的问题。我要实现的是,用户点击ListView中的一项,会有DetailsView显示该项的详细信息。

 实现的过程中,DetailsView却不能切换到“Edit”模式下的视图,但是切换到“insert”模式的视图是OK的。在ModeChanging方法中,也已经顺利执行,可以将当前DetailsView状态置为“Edit”。可为什么Edit视图就是显示不了呢?我无语~明明是独立可以运行的DetailsView,内嵌到ListView中,却莫名地不能编辑。同样是模式转换,ReadOnly==》insert,ReadOnly==>Edit都是DetailsView内置的,就连用户点击的Button也是通过设置CommandField中的属性showInsertButton=true实现。而我们做的,其实是编写用户在Insert/Edit下点击提交按钮之后的触发事件。那么,为什么ReadOnly==》insert可以实现,ReadOnly==>Edit却不行?    

 在多方求助无门的情况下,我只能放弃DetailsView,事实上,是放弃了ListView内嵌控件的方式。内嵌控件并不是想象中的简单,要实现“子控件编辑后,要刷新父控件,却不能刷新整张页面”并没有那么容易,另外,控件嵌套控件,使得一张aspx页面中有大量代码,而在视图编辑器中,也看不到被嵌套的DetailsView控件,不直观……

 有篇《ListView使用技巧》写得挺全,给了我不少帮助。http://www.cnblogs.com/nuaalfm/archive/2008/09/03/1282468.html

 

 额,通篇都在说这个纠结的ListView内嵌DetailsView问题了,哎,想来一个星期也就磨这些事儿,真是惭愧,效率太低了。(下不为例)因为一直存有侥幸,总盼着能解决ReadOnly==>Edit,倒不如推倒重来图个爽快。

 最后,是ThickBox把我解救了:)

 http://jquery.com/demo/thickbox/

 这种上手快,用法简单的JQuery插件,让我惊叹。哎,还是太嫩了,了解的东东太少~加油加油!!!

420°/4209 人阅读/0 条评论 发表评论

登录 后发表评论