title: Sharing an instantiated class among multiple objects in C#
body: <p>I currently have a class which I instantiate when I start my program. The class itself will create a new thread and begin to search for broadcasts from routers.</p>
  
  <p>I have other windows, other then MainWindow, which needs to be able to access the data stored within the instance of this class. However, I'm not sure as to how the other windows can reference this data.</p>
  
  <p>Is there some other way I can store the instance of this class so that it is accessible application wide? I need it to start right when the rest of the application starts, so it seemed logical (to me) to have the class be instantiated in the first window.</p>
  
  <pre><code>namespace Lalu_WPF
  {
      public partial class MainWindow : Window
      {
          // data storage for program
          public FindRouter finder = new FindRouter();
  
          public MainWindow()
          {
  ......
  </code></pre>