2014-02-26 26 views
0

我想將我自己設計的用戶控件加載到表單中,但是當我拖動並放置
用戶時,它會產生錯誤。請參閱我的屏幕截圖,並幫我解決
這個問題。
加載用戶控制時出錯

enter image description here


錯誤的位置在代碼是我提到的行號:

private void populateTransfers(bool all) 
     { 
      AccountTransfer[] accounts; 

      //List<ReferenceData._account> headers = ReferenceData.getIndentHeader_account(); 

      if (all) 
       accounts = accountClient.getAllPendingTransfers(); 
      else 
       accounts = accountClient.getPendingTransfers(Program.loggedInUser.account.id);//line no:47 

      if (accounts != null) 
      { 
       var query = from a in accounts 
          select new 
          { 
           Id = a.id, 
           Name=a.name,          
           Status = a.status, 
           Date = a.ludt.ToShortDateString() 
          }; 

       this.gridPendingTransfers.DataSource = query.ToList(); 
       this.gridPendingTransfers.RefreshDataSource(); 
      } 
      else 
      { 
       CexAppUtil.ShowEmptyGrid("No pending transfers", this.gridPendingTransfers); 
      } 

private void initializeData() 
     { 
      if (Program.loggedInUser != null && Program.loggedInUser.isAdmin()) 
      { 
       pendingTransferOptionsPanel.Visible = true; 
       showAllPendingTransfers.Visible = true; 
       if (showAllPendingTransfers.Checked) populateTransfers(true); 
       else populateTransfers(false); 
      } 
      else 
      { 
       pendingTransferOptionsPanel.Visible = false; 
       showAllPendingTransfers.Visible = false; 
       populateTransfers(false);//line no:167 
      } 
     } 

請幫我解決這個問題。

感謝提前。

+0

也許'accountClient'爲null? – Fung

+1

正在構造函數中做一些工作嗎?從構造函數中刪除所有代碼而不是InitilizeComponents()。然後創建一個新的Initilize方法,從構造函數複製代碼。你在form.load或者某個方面調用這個方法。試試吧;) – Sebi

+0

Thanx It works @Sebi –

回答

0

通過啓動Visual Studio的新實例並將調試器附加到第一個實例的進程,您可以調試並在自定義控件中找到錯誤。 之後,您可以添加新的控件並查看哪個對象爲空。

0

正在構造函數中做一些工作嗎?從構造函數中刪除所有代碼而不是InitilizeComponents()。然後創建一個新的Initilize方法,從構造函數複製代碼。你在form.load或者某個方面調用這個方法。嘗試一下;) - @ Sebi

感謝每一個。