2010-10-12 59 views
1

我在一個UserControl內部有1個ModalPopupExtender。一切工作都很好,直到我開始添加相同的用戶控件到頁面。我在JavaScript控制檯收到此錯誤消息::UserControl中的一個頁面上的多個ModalPopUpExtender

消息:Sys.InvalidOperationException:具有相同ID「MPE1」兩個組件不能被添加到應用程序。

我明白錯誤,很明顯,框架需要唯一的ID。我無法弄清楚的是如何給他們一個獨特的名字。預先感謝您的幫助。

+0

請發佈您的代碼示例。 – 2010-10-12 14:43:19

回答

1

布賴恩,謝謝,但這是在.NET 2.0。

解決此問題的簡單方法是隻刪除標籤「BehaviorID」。這是我現在選擇的選項,我希望將來我不必使用JS調用任何彈出窗口。

0

你是否在使用靜態的ClientIDMode的.NET 4?這會導致問題,儘管使用默認或預測選項,這應該可行......檢查客戶端足跡,查看是否所有ID都是MPE1或者是如何完成的。它應該是uc1_MPE1。如果您有兩個具有相同ID(或ID爲空)的UC,則會導致此問題。

HTH。

0

有兩種方法來解決這個問題:

  1. 不要通過解釋ssparacio並刪除BehaviorID標籤。只要您不需要對控件進行客戶端調用,就可以這樣做。
  2. 在Page_Init期間爲BehaviourID分配一個唯一值。一個好的選擇是定義控件的用戶控件的ID。
相關問題