在ASP.NET用户控件中,实际上是从DataSourceID中获取数据,而不仅仅是将DataSourceID传递给子控件?

时间:2015-11-17 14:38:02

标签: asp.net objectdatasource web-user-controls

我已经做了一段时间的ASP.NET webforms,但我是User Controls的新手。用户控件是否有可能以与股票数据绑定控件相同的方式使用数据,例如,DropDownList(其值来自ObjectDataSource,并在初始查询后存储在Viewstate中)?或者必须由服务器控制来完成?

我希望我的用户控件做的是从数据库中获取日期列表(通过ObjectDataSource),找到最接近的第一个记录日期的前一个星期六,最近的星期日到最后一个记录的日期,然后以编程方式为我的两个计算日期生成并发出一些JavaScript代码(技术上,HTML5 Canvas绘图命令),以及数据本身的所有日期。但它只需要获取一次数据,而不是每次回发。

在我的初稿中,我硬编码了用户控件的代码隐藏中的数据库选择功能,只是为了确保我的Canvas绘图命令正确发出。但我不愿意将此作为长期解决方案。它也很笨重,因为我的用户控件注定要放在FormView中。我不得不从FormView的DataBound事件手动调用我的用户控件的更新函数。

我在Google上做了几个小时,但大多数文章和讨论围绕着将DataSourceID传递给子控件,而不是主动使用DataSourceID中的数据。可以吗?

如果用户控件本身不能使用数据,我可以给用户控件一个子GridView(我想做的事情),并以某种方式窥视GridView肩上的ITS数据副本?

0 个答案:

没有答案