防止 AspxGridView 在加载页面上填充

发布于 2024-07-23 19:49:18 字数 294 浏览 6 评论 0原文

我的页面上有 AspxGridView 。 我希望用户能够在 Web 表单上设置一些数据,在按下一个按钮后,屏幕上的数据将被读取、验证并创建业务对象。 该对象有一个 GetData() 函数,并返回表示网格中行的对象数组。
我希望 ASPXGrid 在用户单击按钮之前不要填​​充。 我知道我可以在设计时将 DataSourceId 设置为 null - 但随后我失去了将网格列与对象属性同步的可用性(我无法添加或编辑新列的某些列属性)。 我知道我可以拦截 ObjectCreating 事件并为网格提供返回空数据集的假对象。 但还有更优雅的解决方案吗?

I have AspxGridView on my page. I want users to be able to set up some data on the web form, and after they press one button, the data from screen is being read, validated and bussines object is being created. This object has a GetData() function, and returns an array of objects representing rows in a grid.
I want ASPXGrid not to populate, until user clicks the button. I know I can set DataSourceId in design time to null – but then I lost availability of synchronizing grid columns with object properties (I cannot add or edit some column properties for new columns). I know I can intercept ObjectCreating event and provide grid with an fake object returning empty data sets. But are there any more elegant solutions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

她比我温柔 2024-07-30 19:49:19

您什么时候进行 DataBind() 调用? 难道您不能将其放在 if 块中以确保它仅在回发时发生吗?

if(Page.IsPostBack) {
    DoDataBindingStuff();
}

When are you doing the DataBind() call? Couldn't you just place that inside an if block to make sure it only happens on postback?

if(Page.IsPostBack) {
    DoDataBindingStuff();
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文