C#では、条件に応じて変更したい画像のラベルの2次元配列があります。より具体的には、特定の画像と画像なしを切り替えて(透明なラベルに変えて)、条件が満たされたときに再び元に戻したいと思います。現在、ラベルをもう一度クリアするために、私はこれを使用しています:
someLabelArray[i][j].Image = null;
しかし、それは常にNull参照例外をスローするため、これは「正しい」方法ではないと思われます。それとも、エラーを誤解していますか?これを行うより良い方法はありますか?
C#では、条件に応じて変更したい画像のラベルの2次元配列があります。より具体的には、特定の画像と画像なしを切り替えて(透明なラベルに変えて)、条件が満たされたときに再び元に戻したいと思います。現在、ラベルをもう一度クリアするために、私はこれを使用しています:
someLabelArray[i][j].Image = null;
しかし、それは常にNull参照例外をスローするため、これは「正しい」方法ではないと思われます。それとも、エラーを誤解していますか?これを行うより良い方法はありますか?
それは絶対に問題ないと思いますsomeLabelArray
が、それはnullであるか、使用しているsomeLabelArray[i]
値が何であれnulli
です。
これをテストする簡単な方法: コードを次のように変更します。
someLabelArray[i][j].Text = "foo";
これは明らかに画像とは関係がなく、配列が問題なければ確実に機能します。これも同じように失敗すると思われます。その場合、配列をどのように構築しているかを注意深く調べる必要があります。
これが機能する場合-まあ、もう一度見てみます:)