I have created a user control for our in house forms. It is basically just a dropdownlist that gets populated with all of the us states with properties set up to expose the selectedindex, selecteditem and selectedvalue. It inherits from webcontrol. It has a protected member dropdownlist and in the prerender method, it does...<BR><BR>lstStates = new DropDownList();<BR>this.lstStates.EnableViewState = true;<BR><BR>... followed by a bit of other code.<BR><BR>In my web project, I copied the dll into my bin directory and set a reference to it. Then in the page I wanted to use it in, I put the directive at the top and the tags in place for it. When I first run the page, it works fine and shows the dropdownlist loaded up with all of the states as it should be. The problem is when I go to submit the form. I try to use the selectedvalue (which I did define in my control as a public string property) but, it can&#039;t because it says Object reference not set to an instance of an object. So, it appears that it is recreating this object every time the page loads and it&#039;s actually firing the code for my button click (submitting the form) before the dropdownlist gets instantiated. If this is true, what do I do? And, if that&#039;s the case, will it keep the value that I selected? I thought that if I set the viewstate to true in the class itself that it would. Thanks.