title: Bind a TextBox to an object's property in WPF
body: <p>I know you would say this question is duplicated, but I haven't found any working solution.
  So an easy scenario:</p>
  
  <p>I have a textbox and a button:</p>
  
  <pre><code>&lt;TextBox x:Name="textbox" Text="{Binding st.SomeText}"&gt;
  &lt;Button Click="Button_Click"&gt;Push&lt;/Button&gt;
  </code></pre>
  
  <p>I have a class named Something:</p>
  
  <pre><code>public class Something
  {
      public string SomeText { get; set; }
  }
  </code></pre>
  
  <p>I have an object in the MainWindow class:</p>
  
  <pre><code>public partial class MainWindow : Window
  {
      Something st;
  
      public MainWindow()
      {
          InitializeComponent();
          st = new Something();
      }
  
      private void Button_Click(object sender, RoutedEventArgs e)
      {
          MessageBox.Show(st.SomeText);
      }
  }
  </code></pre>
  
  <p>So I want to type something to the textbox, press the button and get a message contains the textbox's text, but I keep getting empty messages instead.
  What should I modify?</p>
  
  <p>A lot of 'solution' said to use a Stackpanel or something and set the DataContext, but it didn't work either.</p>