bonjour,

J'utilise un composant com adobe pdf reader qui est AxAcroPDFLib.
En fait j'essaye de creer un controle dynamique avec une tabpage crée elle aussi dynamiquement.

En fait j'ai deux boutons l'un ouvre la fenetre avec le tabcontrol qui contient un pdf.(la ca va ca marche)
L'autre bouton permet lorsqu'on clique dessus de créer une nouvelle tabpage avec un autre pdf dynamiquement dans la fenetre et le tabcontrol crée precedemment.
Quand je clique sur le second bouton c'est à ce moment là que ca me leve l'exception :
Une exception de type 'System.Windows.Forms.AxHost+InvalidActiveXStateException' a été levée.

et c'est sur :
AxAcroPDFLib.AxAcroPDF axPDF;
axPDF = new AxAcroPDFLib.AxAcroPDF();
axPDF.src ="C:\\Documents and Settings\\exemple.pdf";

voici mon code :
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
private void button1_Click(object sender, EventArgs e)
        {
            frm = new visu();
            axAcroPDF1.LoadFile("C:\\test.pdf");
            frm.Show();
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            TabPage tabPage2 = new TabPage();
            TabControl res = new TabControl();
            res = frm.getTabcontrol();
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(visu));
            //resources = frm.getRessource;
 
            AxAcroPDFLib.AxAcroPDF axPDF;
            axPDF = new AxAcroPDFLib.AxAcroPDF();
 
            axPDF.Enabled = true;
            axPDF.Location = new System.Drawing.Point(6, 6);
            axPDF.Name = "axPDF";
            axPDF.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("axPDF.OcxState")));
            axPDF.Size = new System.Drawing.Size(649, 332);
            axPDF.TabIndex = 1;
 
            tabPage2.Controls.Add(axPDF);
            axPDF.LoadFile("C:\\res.pdf");            
            res.Controls.Add(tabPage2); 
 
        }
Peut etre auriez vous une idée ?