Bonjour,

Je n'arrive pas à faire fonctionner un ModalPopupExtender d'AjaxControlToolkit avec les MasterPage, lorsque le TargetControlID du ModalPopupExtender ne se trouve pas dans le même ContentPlaceHolder que le ModalPopupExtender.

Par exemple avec la page suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<%@ Page Language="C#" MasterPageFile="~/Menu.master" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="test" %>
 
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
 
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="SousMenu" Runat="Server">
    <asp:Button ID="Button1" runat="server" Text="Button" />
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="Contenu" Runat="Server">
    <cc1:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="Button1">
    </cc1:ModalPopupExtender>
</asp:Content>
J'ai le message d'erreur :
Le TargetControlID de 'ModalPopupExtender1' n'est pas valide. Impossible de trouver un contrôle avec l'ID 'Button1'.
Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception: System.InvalidOperationException: Le TargetControlID de 'ModalPopupExtender1' n'est pas valide. Impossible de trouver un contrôle avec l'ID 'Button1'.

Erreur source:

Une exception non gérée s'est produite lors de l'exécution de la demande Web actuelle. Les informations relatives à l'origine et l'emplacement de l'exception peuvent être identifiées en utilisant la trace de la pile d'exception ci-dessous.

Trace de la pile:

[InvalidOperationException: Le TargetControlID de 'ModalPopupExtender1' n'est pas valide. Impossible de trouver un contrôle avec l'ID 'Button1'.]
System.Web.UI.ExtenderControl.RegisterWithScriptManager() +326771
System.Web.UI.ExtenderControl.OnPreRender(EventArgs e) +19
AjaxControlToolkit.ExtenderControlBase.OnPreRender(EventArgs e) +59
AjaxControlToolkit.ModalPopupExtender.OnPreRender(EventArgs e) +117
System.Web.UI.Control.PreRenderRecursiveInternal() +80
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Control.PreRenderRecursiveInternal() +171
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +842
Comme d'après mes recherches je semble être le seul à avoir ce problème ce doit surement être quelque chose de simple, mais je ne trouve pas

Merci d'avance pour toute aide.