我遇到的问题是我担心的是设计问题,而不是编码问题,但无论如何我都会问这个问题。
我有一个ASP.NET 2.0 Web应用程序,它根据数据库中的值动态加载两个不同的用户控件。在每个用户控件中,基本上是一个FormView控件和一个显示数据库中值的SqlDataSource控件。其中一个控件仅用于显示数据(我使用FormView以便更容易控制布局)而另一个FormView我需要用户才能进行编辑。
在此页面上,用户可以选择下拉列表来更改用于加载控件的“魔术值”。此下拉列表已启用自动回发。
当回发发生时,动态加载控件后一切看起来都很好,但是当您单击编辑按钮时,它只是刷新页面而不将FormView置于“编辑”模式。你必须再次点击“编辑”按钮才能实现这一目标。
所以,现在我的问题是,如何才能阻止额外的鼠标点击?我认为它与回弹中的事物构造方式有关,但我的大脑现在已经被炒了,我希望有人可能已经解决了这个问题。
答案 0 :(得分:1)
你在哪里(什么事件)加载用户控件?在你的控件加载时,你的编辑按钮已经连线(没有任何东西)......
编辑:在page_load和selected_index_changed上放置断点以查看它们何时发生;可能是page_load首先发生了擦除连线;你加载了由IsPostBack保护的控件吗?是否启用了ViewState? Viewstate可能会自动恢复您的控件,但是您的page_load会再次擦除它们......
......如果没有代码,很难确定。您可能还想打开跟踪并向方法添加一些跟踪输出,以确切了解发生的情况,并查看生成的html树