Textboxenarray->Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
-
Hallo , ich habe ein textboxarray dynamisch angelegt und habe folgende fehlermeldung wenn ich on einem buttoevent auf eine Textbox mit textboxarray[0]->Text="test"; zugreifen will:
Eine nicht behandelte Ausnahme des Typs "System.NullReferenceException" ist in nano.exe aufgetreten.Zusätzliche Informationen: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
? ich habe den Code an folgender Stelle erzeugt
namespace Formular { using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; public ref class Form1 : public System::Windows::Forms::Form { public: array <TextBox ^> ^textboxArray1; Form1(void) { InitializeComponent(); array <TextBox ^> ^textboxArray1 = gcnew array <TextBox ^>(4); for(int i=0;; i<4; i++) { textboxArray1[i] = gcnew TextBox(),gcnew TextBox(); textboxArray1[i]->Size = System::Drawing::Size(70, 20); this->groupBox1->Controls->Add(textboxArray1[i]); textboxArray1[i]->Text=Convert::ToString(i); } for(int x=1, i=1; x<5; x++,i++){ textboxArray1[x-1]->Location =System::Drawing::Point(-54+(i*60), 120); } }
-
Deine Member Variable textboxArray1 wird von der gleichnamigen lokalen Variable überdeckt.
Ersetze
array <TextBox ^> ^textboxArray1 = gcnew array <TextBox ^>(4);
durch
textboxArray1 = gcnew array <TextBox ^>(4);
Ausserdem würde ich
textboxArray1[i] = gcnew TextBox(),gcnew TextBox();
durch
textboxArray1[i] = gcnew TextBox();
ersetzen.