Deciding on User Control to Use at Runtime
<p>I have 2 user controls defined on a page:</p>

<pre><code>&lt;%@ Register Src="Foo.ascx" TagName="FooControl" TagPrefix="acme" %&gt;
&lt;%@ Register Src="Bar.ascx" TagName="BarControl" TagPrefix="acme" %&gt;
.
.
.
&lt;acme:FooControl ID="myFoo" runat="server" Visible="false" /&gt;
&lt;acme:BarControl ID="myBar" runat="server" Visible="false" /&gt;
</code></pre>

<p>At runtime, I'd like to set one of the user control's properties in various locations in the page's code. For example:</p>

<pre><code>protected void SomeMethod()
{
     if (isSomeCondition) 
     {
         myFoo.Visible = true;         
     }
     else
     {
         myBar.Visible = true;
     }

     // ...

     if (somethingElse) 
     {
         if (isSomeCondition) 
         {
             myFoo.Prop1 = 123;         
         }
         else
         {
             myBar.Prop1 = 123;
         }
     }

     // ...
}
</code></pre>

<p>I know that I can have the 2 user controls inherit from a common Interface, but is there another (possibly better) way?</p>
