The ViewState doesn't guarantee the order that controls
are loaded and saved. Therefore, if the value of the
Layout property is dependent on the Height and Width, it
probably shouldn't be saved in the ViewState. You could
make it a property that is calculated when it is accessed.
If that is a problem for some reason, your best bet is to
have your server control override the LoadViewState()
method and load the values from the ViewState in the
correct order. That gives you total control.
Hope this helps.
Phil
http://haacked.com/
>-----Original Message-----
>I have a server control. It has a Layout property, a
Height property,
>and a Width property. What happens in the Height and
Width property
>depends on the Layout.
>
>Unfortunately, what seems to be happening is that when I
run a page
>that has my control in it, the Height and Width
properties are
>initialized from ViewState before the Layout property.
As a result,
>the Height and Width properties are assuming a Layout
property of 0
>(it's an enum property, and that's what you get when
there's no value).
>
>Is there a way that I can force my page to initialize
the Layout
>property first? I've tried moving it above them in the
code, on the
>chance that it's processing from the top down, but that
didn't have any
>effect.
>
>Can anyone help?
>
>Thanks,
>Lisa
>
>.
>