Bonjour,
Lorsqu'on crée son propre UserControl, et qu'on l'ajoute à un formulaire, Visual Studio 2005, remplie automatiquement sa methode InitializeComponent, on définissant les propriétés du Usercontrol. Ce qui cause des problèmes si le UserControls à des valeurs par défaut.
Par exemple : Dans le UserControl :Dans le formulaire qui contient mon UserControl
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Public Class MyUserControl Private _MyProperty As String = "0.000000" Public Property MyProperty() As String Get Return Me._MyProperty End Get Set(value As String) Me._MyProperty = value End Set End Property End ClassDans le fichier form1.Designer.vb
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Public Class Form1 Public Sub New() ' Cet appel est requis par le Concepteur Windows Form. InitializeComponent End Sub End ClassComment faire en sorte (certainement un attribut sur la propriété MyUserControl.MyProperty) que VS2005 ne génère pas la ligne d'initialisation de la propriété dans InitializeComponent ?
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 . . . 'REMARQUE*: la procédure suivante est requise par le Concepteur Windows Form 'Elle peut être modifiée à l'aide du Concepteur Windows Form. 'Ne la modifiez pas à l'aide de l'éditeur de code. <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() . . . ' 'MyUserControl1 ' Me.MyUserControl1.Dock = System.Windows.Forms.DockStyle.Fill Me.MyUserControl1.MyProperty = "0.000000" Me.MyUserControl1.Location = New System.Drawing.Point(0, 18) Me.MyUserControl1.Name = "MyUserControl1" Me.MyUserControl1.Size = New System.Drawing.Size(304, 123) Me.MyUserControl1.TabIndex = 0 . . . End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part Me.MyUserControl1.MyProperty = "0.000000"
Partager