Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Placer controle dynamique dans tabpage crée dynamiquement

1 réponse
Avatar
nans31
Bonjour,

j'utilise le composant com adobe pdf reader qui permet d'afficher des pdf.
En fait j'ai deux forms.
Dans la premiere form il y a 2 boutons et dans la deuxieme j'ai un
tabcontrol qui contient le composant adobe pdf reader.
sur clic du premier bouton,ca ouvre la seconde form avec le tabpage qui
contient un pdf.(la ca va ca marche)
ensuite sur clic du deuxième,ca doit 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'."

L'exception se lève sur :
axPDF.src ="C:\\Documents and Settings\\exemple.pdf";

voici mon code :
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();

AxAcroPDFLib.AxAcroPDF axPDF;
axPDF = new AxAcroPDFLib.AxAcroPDF();

axPDF.Enabled = true;
axPDF.Location = new System.Drawing.Point(6, 6);
axPDF.Name = "axPDF";
axPDF.Size = new System.Drawing.Size(649, 332);
axPDF.TabIndex = 1;

tabPage2.Controls.Add(axPDF);
axPDF.src("C:\\res.pdf");
res.Controls.Add(tabPage2);

}

Je ne comprends pas qqn aurait-il une idée?
Merci.

1 réponse

Avatar
nans31
C bon c résolu!!!

Il fallait que dans le code du bouton 2 il y est :
tabPage2.Controls.Add(axPDF);
res.Controls.Add(tabPage2);
axPDF.src("C:res.pdf");

et pas :
tabPage2.Controls.Add(axPDF);
axPDF.src("C:res.pdf");
res.Controls.Add(tabPage2);

Voila :)


"nans31" a écrit :

Bonjour,

j'utilise le composant com adobe pdf reader qui permet d'afficher des pdf.
En fait j'ai deux forms.
Dans la premiere form il y a 2 boutons et dans la deuxieme j'ai un
tabcontrol qui contient le composant adobe pdf reader.
sur clic du premier bouton,ca ouvre la seconde form avec le tabpage qui
contient un pdf.(la ca va ca marche)
ensuite sur clic du deuxième,ca doit 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'."

L'exception se lève sur :
axPDF.src ="C:Documents and Settingsexemple.pdf";

voici mon code :
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();

AxAcroPDFLib.AxAcroPDF axPDF;
axPDF = new AxAcroPDFLib.AxAcroPDF();

axPDF.Enabled = true;
axPDF.Location = new System.Drawing.Point(6, 6);
axPDF.Name = "axPDF";
axPDF.Size = new System.Drawing.Size(649, 332);
axPDF.TabIndex = 1;

tabPage2.Controls.Add(axPDF);
axPDF.src("C:res.pdf");
res.Controls.Add(tabPage2);

}

Je ne comprends pas qqn aurait-il une idée?
Merci.