title: How to update design-time UserControl interface based on property value?
body: <p>I've created a UserControl with the following public property:</p>
  
  <pre><code>[Browsable(true)]
  public string Text
  {
      get { return pnlLookupTable.GroupingText; }
      set { pnlLookupTable.GroupingText = value; }
  }
  </code></pre>
  
  <p>pnlLookupTable is, as you may have guessed, a Panel control.  I can change the value of the Text property in the Properties window and it's reflected in the markup like it should be.  However, the design view of the UserControl inside a page does not show updated GroupingText for the Panel.  How can I get this to happen?</p>
  
  <p><strong>EDIT</strong>:</p>
  
  <p>By request, here is the entire class to which that property belongs.  You can see there's nothing special going on:</p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.ComponentModel;
  using System.Linq;
  using System.Web;
  using System.Web.UI;
  using System.Web.UI.WebControls;
  
  public partial class LookupTable : System.Web.UI.UserControl
  {
      [Browsable(true)]
      public string Text
      {
          get { return pnlLookupTable.GroupingText; }
          set { pnlLookupTable.GroupingText = value; }
      }
  }
  </code></pre>
  
  <p>And here's the relevant part of the .ascx file:</p>
  
  <pre><code>&lt;%@ Control Language="C#" AutoEventWireup="true" CodeFile="LookupTable.ascx.cs" Inherits="LookupTable" %&gt;
  &lt;asp:Panel ID="pnlLookupTable" runat="server" GroupingText="Lookup Table"&gt;
      &lt;%-- Irrelevant content here. --%&gt;
  &lt;/asp:Panel&gt;
  </code></pre>
  
  <p>I have changed some identifiers and other trivial things to protect the proprietary nature of the code.</p>
  
  <p>I should also reiterate that I'm looking at a Web form in design mode that has my control added, and I'm changing the Text property.  I want to see the change to the Panel's GroupingText visually in the designer.</p>