我已經半夜了,仍然試圖得到這個空例外計算出來。我讀了一些關於這個問題的文本,但沒有幫助我以任何方式,對我來說是什麼問題,因爲它應該工作:/這只是崩潰在這段代碼:ArgumentNullException我想不通的數組中
Private void UpdateGUI()
{
string selectedItem = cmbDisplayOptions.Items[cmbDisplayOptions.SelectedIndex].ToString();
rdbtReserv.Checked = true;
lstReservations.Items.Clear();
lstReservations.Items.AddRange(m_seatMngr.GetSeatInfoStrings(selectedItem));
}
lstReservations.Items.AddRange(m_seatMngr.GetSeatInfoStrings(selectedItem));
給我ArgumentNullExeption,但對我來說它不應該這樣做。
中的AddRange將字符串selectedItem設置爲其他類:
public string[] GetSeatInfoStrings(string selectedItem)
{
int count = GetNumOfSeats(selectedItem);
if (count <= 0)
{
return null;
}
string[] strSeatInfoStrings = new string[count];
for (int index = 0; index <= m_totNumOfSeats - 1; index++)
{
strSeatInfoStrings[index] = GetSeatInfoAt(index);
}
return strSeatInfoStrings;
}
這int count = GetNumOfSeats(selectedItem);
去這裏和一個int回報:
private int GetNumOfSeats(string selectedItem)
{
if (selectedItem == "ReservedSeats")
{
return GetNumReserved();
}
if (selectedItem == "VacantSeats")
{
return GetNumVacant();
}
else
{
return m_totNumOfSeats;
}
}
我已經檢查了排列有空格正確的號碼( 60),並且selectedItem
有一個字符串(Allseats開頭,所以它應該返回m_totnumOfSeats
這是一個60的int)但是,然後在private int GetNumOfSeats
出現問題,它返回null,...爲什麼?
我看不出問題..也許因爲試圖找到問題而失明瞭。在這裏總是得到傑出的幫助,我已經學會了噸!所以也許有人可以指出我的代碼中存在的所有問題。
非常感謝任何和所有的建議!
//問候
異常時是否爲'm_seatMngr'空? – Oded 2012-07-28 10:38:54
檢查堆棧跟蹤並在可能的情況下發帖以幫助查找提供錯誤的代碼的確切行。 – ZafarYousafi 2012-07-28 10:40:52
什麼是空格(60)! – Anirudha 2012-07-28 10:48:43