Bonjour,

Je rencontre un probleme avec un modalpopup extender : je veux provoquer la mise à jour de données de la page qui declenche la modalpopup extender sans recharger la page
code de la page
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
 
<asp:Content ContentPlaceHolderID="ContenuPrincipal"   runat="server" ID="ContenuPageTest">
   <script type="text/javascript">
   function onOk() {
   document.getElementById("btnOk").click();
   }
   </script>
    <asp:ScriptManager ID="smMaPage" runat="server">
    </asp:ScriptManager>
 
      <asp:UpdatePanel ID="upMaPage" runat="server" UpdateMode="Conditional">
      <ContentTemplate>
 
    <div>
  <link rel="stylesheet" type="text/css" href="CssTest.css">
 
        <asp:Button ID="btnSort" runat="server" Text="trier par prix" 
            onclick="btnSort_Click" />
        <asp:Button ID="btnFilter" runat="server" 
            Text="filtrer" />
 
        <table ID="monTableau" runat="server" >
        </table>
 
 
 
        <asp:Panel ID="Panel1" runat="server" style="display:none">
 
            <table>
                <tr>
                    <td>
                        <asp:RadioButton ID="rbSup" runat="server" GroupName="groupe1" 
 
                            Text="Afficher les produits dont le prix &gt;300 euros" />
                    </td>
                </tr>
                <tr>
                    <td>
                        <asp:RadioButton ID="rbInf" runat="server" GroupName="groupe1" 
 
                            Text="Afficher les produits dont le prix &gt; 200 euros" />
                    </td>
                </tr>
                <tr>
                    <td>
                        <asp:Button ID="btnOk" runat="server" onClick="btnOk_Click" Text="OK" 
                          />
                    </td>
                    <td>
                        <asp:Button ID="btnCancel" runat="server" Text="Cancel" />
                    </td>
                </tr>
            </table>
 
        </asp:Panel>
 
         <cc1:ModalPopupExtender ID="ModalPopupExtender1" runat="server" 
           TargetControlID="btnFilter" 
             PopupControlID="Panel1" BackgroundCssClass="modalBackground"
          OkControlID="btnOk"  OnOkScript="onOk()"
          CancelControlID="btnCancel"
          >
          </cc1:ModalPopupExtender>
    </div>
 
 
    </ContentTemplate>
   </asp:UpdatePanel>
</asp:Content>
voila le code behind
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
 
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using TestdotNetDll;
using System.Data.SqlClient;
using System.Collections.Generic;
 
public partial class _Default : System.Web.UI.Page 
{
    List<Produit> listeProduit = new List<Produit>();
    Categorie c = new Categorie();
 
    protected void Page_Load(object sender, EventArgs e)
    {
            listeProduit = c.GetProducts();
            BuildTable();
 
    }
 
    protected void btnSort_Click(object sender, EventArgs e)
    {
 
        listeProduit.Sort(new ProductPriceComparer());
        BuildTable();
 
    }
 
    protected void btnOk_Click(object sender, EventArgs e)
    {
 
        if (rbSup.Checked)
            listeProduit = c.GetProducts(300);
       if(rbInf.Checked)
            listeProduit = c.GetProducts(200);
 
        listeProduit.Sort(new ProductPriceComparer());
 
        BuildTable();
 
 
    }
 
    protected void BuildTable()
    {
        monTableau.Rows.Clear();
        HtmlTableRow ligneTitre = new HtmlTableRow();
        HtmlTableCell caseTitre1 = new HtmlTableCell();
        HtmlTableCell caseTitre2 = new HtmlTableCell();
        caseTitre1.InnerHtml = "Nom";
        caseTitre2.InnerHtml = "Prix";
        ligneTitre.Cells.Add(caseTitre1);
        ligneTitre.Cells.Add(caseTitre2);
        monTableau.Rows.Add(ligneTitre);
        foreach (Produit p in listeProduit)
        {
            HtmlTableRow Maligne = new HtmlTableRow();
            HtmlTableCell maCase = new HtmlTableCell();
            HtmlTableCell maCase2 = new HtmlTableCell();
            maCase.Width = "50%";
            maCase.InnerHtml = p.Nom;
            maCase2.Width = "50%";
            maCase2.InnerHtml = p.Prix.ToString();
            Maligne.Cells.Add(maCase);
            Maligne.Cells.Add(maCase2);
            monTableau.Rows.Add(Maligne);
        }
 
        upMaPage.Update();
    }
 
 
}
la mise à jour se fait bien mais avec un chargement de la page et c'est ce que je veux éviter .

Merci d'avance