Hi Alastair,
I know that the ISupportInitialize interface
(http://msdn.microsoft.com/en-us/library/system.componentmodel.isupportinitialize.aspx)
was designed to help solve the problem where you need to perform
initialisation on a Control and you have no control in which order the
various properties are initialised. The Winforms code generator will
reflect on your control and automatically insert the BeginInit() and
EndInit() statements into your designer generated code.
I don't know if it works for Extender providers or not (it shouldn't be
too hard to test it out and see if the WinForms designer recognises it
or not, and if not, you can put your own BeginInit() and EndInit() calls
on either side of the InitializeComponents call in your Form's constructor).
All you have to do is suppress any processing in your extender provider
until EndInit is called.
Hope this helps,
Joe.
Alastair Waddell wrote:
Hi all,
Is there a way to specify where the designer puts code?
I will try to explain…
I have an extender provider on my form that relies on the controls
name but the designer file puts the code “wherever” it likes.
So if I look, at the form.designer.vb file then I will see something like
…
Me.dtStartDate.ControlIsReadOnly = False
Me.dtStartDate.DatePickerHeight = 22
Me.dtStartDate.DatePickerWidth = 427
Me.dtStartDate.DateValue = New Date(2010, 2, 2, 17, 12, 5, 917)
Me.ControlValueMonitor1.SetControlValueMonitor(Me.dtStartDate, True)
Me.dtStartDate.Name = "dtStartDate"
…
In this case the controls name is not set att the time the provider
(Me.ControlValueMonitor1) is set
What I want is that my
“Me.ControlValueMonitor1.SetControlValueMonitor(Me.dtStartDate, True)”
to be the last line
Me.dtStartDate.ControlIsReadOnly = False
Me.dtStartDate.DatePickerHeight = 22
Me.dtStartDate.DatePickerWidth = 427
Me.dtStartDate.DateValue = New Date(2010, 2, 2, 17, 12, 5, 917)
Me.dtStartDate.Name = "dtStartDate"
Me.ControlValueMonitor1.SetControlValueMonitor(Me.dtStartDate, True)
Any ideas?
Alastair
--
Register now for Atlassian Summit 2010, June 9-11 http://summit.atlassian.com
Joseph Clark
.NET Developer
Atlassian
+61 422 812 044 mobile
173-185 Sussex St.
Sydney, NSW
Australia