I need to implement the classic Factory Method pattern in ASP.NET to create server controls dynamically.
The only way I’ve found to create .ascx controls is to use the LoadControl method of the Page/UserControl classes. I find it messy however to link my factory with a page or to pass a page parameter to the factory.
Does anybody know of another method to create such controls (such as a static method somewhere i’d have overlooked) ?
Thanks.
In the end, I decided to pass the page as a parameter to the factory. To make calls to the factory method easier, I changed the factory class from a singleton to a common class, and I passed the page to the constructor:
Since I have to instantiate many controls on each page with the factory, this is probably the most concise and usable way to implement the pattern.