2008-11-05 97 views
1

我遇到的问题是我担心的一个问题是设计问题,而不是编码问题,但无论如何我都会问这个问题。问题在FormView上进入编辑模式

我有一个ASP.NET 2.0 Web应用程序,它根据来自数据库的值动态加载两个不同的用户控件。这些用户控件中的每一个都基本上都是一个FormView控件和一个显示数据库值的SqlDataSource控件。其中一个控件仅用于显示数据(我使用了FormView,因此我可以更轻松地控制布局),另一个FormView我需要用户才能编辑。

在此页面上,用户可以选择一个下拉框来更改使用何种“魔术值”来加载控件。该下拉菜单启用了自动回发功能。

回发事件发生后,控件动态加载后一切都很正常,但是当您单击编辑按钮时,只需刷新页面而不会将FormView置于“编辑”模式。你必须再次点击编辑按钮才能实现。

所以,现在我的问题,我如何停止额外的鼠标点击是必要的?我认为它与回传中的事物构建有关,但我的大脑现在正在被炒,而且我希望有人可能已经解决了这个问题。

回答

1

哪里(什么事件)你加载用户控件?很可能你的编辑按钮在你的控件加载的时候已经连线(到没有)......

编辑:在page_load和selected_index_changed上放置断点,以查看它们何时发生;可能是因为page_load首先发生,消除了连接;你正在加载由IsPostBack守护的控件,并且ViewState是否已打开? Viewstate可能会自动恢复您的控件,但随后您的page_load再次将其删除...

...很难确定没有代码。你可能想打开跟踪也添加一些跟踪输出到你的方法,看看到底发生了什么,看看生成的HTML树

+0

我使用Page_Load事件加载控件,然后Selected_Index改变事件的下拉菜单。令我困扰的是如果我不激发SelectedIndex改变的事件,一切都按预期工作。 – 2008-11-06 15:41:01