У меня есть метод, который удаляет все старые изображения из массива и добавляет новые, но в последней строке он выдает исключение System.NullReferenceException.C# PictureBox always throws NullReferenceException
PictureBox[] selectedCards = new PictureBox[0];
byte selectedCardsCount = 0;
int selectedCardsIndex = 0;
private void AddSelectedCard(int index, PictureBox newCard)
{
if (selectedCards.Length != 0)
{
foreach (PictureBox card in selectedCards)
{
this.Controls.Remove(card);
}
}
selectedCardsCount++;
selectedCards = new PictureBox[selectedCardsCount];
selectedCards[selectedCardsIndex].Image = new Bitmap(newCard.Image); //The exception is thrown on this line
selectedCardsIndex++;
}
Когда я отладки программы:
selectedCards [selectedCardsIndex] является 0 (не нуль)
newCard.Image является System.Drawing.Bitmap (также не равно нулю)
Ваш последний абзац не имеет смысла. 'selectedCards [selectedCardsIndex]' имеет тип 'PictureBox', он никогда не может быть' 0'. –