2014-02-12 41 views
0

我是C#編程的初學者。在執行其中一個程序時,我遇到了以下錯誤:未將對象引用設置爲對象的實例

Object reference not set to an instance of an object.

如何解決此錯誤?

public static void DisplayPairValue(ref ComboBox cmbBox , 
    String queryString , ref ArrayList arraylist) 
{ 
    //For Displaying value in the ComboBox 
    arraylist = new ArrayList(); 
    cmbBox.DataSource = null;   
    DAL.Methods method = new DAL.SqlDatabase(); 
    DataTable dt = method.Exdata(queryString);   
    if (dt.Rows.Count > 0) 
    { 
     arraylist.Clear(); 
     for(int i=0; i<dt.Rows.Count; i++) 
     { 
      arraylist.Add(new ValuePair(dt.Rows[i][0].ToString(), 
             dt.Rows[i][1].ToString())); 
     } 
     cmbBox.DataSource = arraylist; 
     cmbBox.DisplayMember = "Display"; 
     cmbBox.ValueMember = "Value"; 
     cmbBox.SelectedIndex = -1; 
    }    
} 

public DataTable Exdata(String str) 
{ 
    cmd.Connection = getcon(); 
    cmd.CommandText = str; 
    SqlDataAdapter da = new SqlDataAdapter(cmd); 
    DataTable dt = new DataTable(); 
    da.Fill(dt); 
    return dt; 
} 
+3

你在哪一行上有這個錯誤? –

+2

'cmd'是全局聲明嗎?否則它在Exdata()函數中是未知的。 – fast

+3

嗨,歡迎來到StackOverflow。您應該首先了解這類錯誤的含義。你正在得到一個'NullReferenceException' - 你知道那是什麼,什麼時候發生?如果你不這樣做,那麼最好的結果可能是有人修復你的代碼,但是你將在半小時後回到另一個問題(可能是同一類型)。 – Jon

回答

0

使用斷點來找到你在哪裏得到錯誤。檢查將會有null值正在通過。由於這個原因而出現錯誤。

相關問題