title: Having a reference to a property, Is there a way to grab a reference to the encompassing object?
body: <p>I have extended the <code>Label</code> class as follows:</p>
  
  <pre><code>public class MyLabel: Label {
      public Button btn;
      public string mydata;
  }
  </code></pre>
  
  <p>In my main program, I instantiated a new instance:</p>
  
  <pre><code>MyLabel lbl = new MyLabel();
  lbl.mydata = "some data here";
  lbl.btn = new Button();
  lbl.btn.Click += new EventHandler(button_pressed);
  
  this.Controls.Add(lbl); // Adds the label to the form
  this.Controls.Add(lbl.btn); // Adds the button to the form
  </code></pre>
  
  <p>And I created a method to handle the button click event:</p>
  
  <pre><code>void button_pressed(Object sender, EventArgs e) {
       Button btn = (Button)sender;
       //Now I have an access to the property within MyLabel instance.
       // but how can I access the parent object?
       // I need to access the sibling property [mydata] string from here
  
       btn.Siblings["mydata"] = "some other thing" ;  //Something like this
  
       MyLabel lbl = btn.ParentObject();   //Or something like this
       lbl.mydata = "Some other thing";
  
  }
  </code></pre>