Mais la, vu qu'on change l'image plusieurs fois pendant la vie de la fenetre (dans l'exemple d'Axiome, on change d'image a chaque click sur un bouton),
C'est plutôt toujours la même ou j'ai loupé un post?
Envoyé par
Axiome
du coup l'image est rapidement disposé (juste après l'accolade de fermeture) et ne sera pas visible dans la forme après le clique sur le bouton.
Je comprend pas trop ça. Comment se fait-il que l'image n'est pas visible?
Envoyé par
Guulh
Ca tombe bien, c'est ce que fait le designer tout seul
Ah? Parce que j'ai ajouté une PictureBox en mode design et VS n'a pas ajouté le dispose de cet objet dans le dispose du formulaire.
A quoi vois-tu qu'il le fait?
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
| namespace WindowsApplication1
{
partial class Form1
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.pictureBox1 = new System.Windows.Forms.PictureBox();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.SuspendLayout();
//
// pictureBox1
//
this.pictureBox1.Location = new System.Drawing.Point(13, 13);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(100, 50);
this.pictureBox1.TabIndex = 0;
this.pictureBox1.TabStop = false;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(292, 273);
this.Controls.Add(this.pictureBox1);
this.Name = "Form1";
this.Text = "Form1";
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.PictureBox pictureBox1;
}
} |
Serait-ce parce qu'il l'ajoute à la collection des controles?
this.Controls.Add(this.pictureBox1);
Et que ensuiteDu coup, il faut peut-être suivre un pattern particulier pour ajouter des contrôles dynamiquement, non?
A+
Partager