http://turcguide.com/stack/nre1.jpg
私の例 mytext[i].text のようなユーザー定義オブジェクトを使用すると、NullReferenceException が発生しますが、設計時のオブジェクトを使用すると、NullReferenceException はありません。
私の例では、以下の行は例外を与えませんが、 IngNbrTxt.Text(desing time object) の代わりに mytext[i].text(run time object) のような配列オブジェクトを配置すると、リンクに示されているように例外が発生しますその上。
string myvar = Convert.ToString(IngNbrTxt.Text);
private void inglist_click(object sender, EventArgs e)
{
TextBox[] mytext = new TextBox[9];
int rows = 0;
Int32.TryParse(IngNbrTxt.Text, out rows);
if (inglist.SelectedIndex > -1 && this.CommandFrame.Visible == true)
{
for (int i = 0; i < rows; ++i)
{
//string myvar = (mytext[i].Text != null ? mytext[i].Text.ToString() : (string)null);
string myvar = Convert.ToString(IngNbrTxt.Text);
if (myvar == null)
{
mytext[i].Text = Convert.ToString(inglist.Items[inglist.SelectedIndex]);
}
}
}
else
{
return;
}
}