title: Custom Event handler is getting called twice?
body: <p>I've created an event handler that simply returns a list of objects that I receive from a web service when the call completes. </p>
  
  <p>Now I went ahead and ran the app in debug mode and found out that the first time the event is called it works perfectly, but immediately after it completes the event is being fired for a second time. I've checked and am absolutely sure I am not calling the event more than once in the receiver class.</p>
  
  <p>This is my first shot at creating custom event handlers inside my applications so I am not entirely sure the implementation is 100% accurate. </p>
  
  <p>Any ideas of what might be causing this? Is the way I created the event handler accurate?</p>
  
  <p><strong>This is the DataHelper class</strong></p>
  
  <pre><code>public class DataHelper
  {
      public delegate void DataCalledEventHandler(object sender, List&lt;DataItem&gt; dateItemList);
      public event DataCalledEventHandler DataCalled;
  
      public DataHelper()
      {
  
      }
  
      public void CallData()
      {
          List&lt;DataItem&gt; dataItems = new List&lt;DataItem&gt;();
          //SOME CODE THAT RETURNS DATA
          DataCalled(this, dataItems);
      }
  }
  </code></pre>
  
  <p><strong>This is where I subscribed to my event:</strong></p>
  
  <pre><code>protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
  {
     GetNewDataItems();
  }
  private void GetNewDataItems()
          {
  
                  try
                  {
                      DataHelper dataHelper = new DataHelper();
                      dataHelper.CallData();
                      dataHelper.DataCalled += new DataHelper.DataCalledEventHandler(dataHelper_DataCalled);
  
                  }
                  catch
                  {
                     //Handle any errors
                  }
              }
      }
  
      void dataHelper_DataCalled(object sender, List&lt;DataItem&gt; dataItemsList)
      {
          //Do something with results
          //NOTE: THIS IS WHERE THE EXCEPTION OCCURS WHEN EVENT IS FIRED FOR SECOND TIME
      }
  </code></pre>