darkprodukt
Goto Top

Listbox nimmt neue Items nicht an und hängt sich auf

Guten Tag,

ich hänge an einem größeren Projekt, dass ich mir schon seit einer Ewigkeit fertig wünsche.


Mein Problem aus irgendeinem Grund nimmt die Listbox bestimmte Einträge nicht an...

Hier der Code Ausschnitt:
private: List<String^>^ FileExtensions;

//[...]

XmlDocument^ XmlSettings = gcnew XmlDocument;
String^ FileSettings = L"settings.xml";  

if( File::Exists(FileSettings) )
{
     XmlSettings->Load(FileSettings);

     XmlNodeList^ ExtensionsList = XmlSettings->GetElementsByTagName(L"File");  
     serien_auswahl->Items->Add(L"Test1");  

     //for each(XmlElement^ FileExt in ExtensionsList)
     for(int i = 0; i < ExtensionsList->Count; i++)
     {
          MessageBox::Show(ExtensionsList[i]->InnerXml->Trim() + L" " + ExtensionsList->Count.ToString());  
          if( ExtensionsList[i]->InnerXml->Trim()->StartsWith(L"-") == false )  
          {
               MessageBox::Show(ExtensionsList[i]->InnerXml->Trim());
               FileExtensions->Add(ExtensionsList[i]->InnerXml->Trim());

               //Testanzeige
               serien_auswahl->Items->Add(ExtensionsList[i]->InnerXml->Trim());
          }
     }
     serien_auswahl->Items->Add(L"Test2");  
}

Zur Erklärung:
Ich versuche aus einem XML File alle Einträge <File>Text</File> einzulesen und in einer Liste zu speichern.
Damit ich nachvollziehen kann, dass das auch Funktioniert lasse ich Testweise die Einträge auch in die Listbox schreiben.

Problem in der Listbox steht am Ende nur "Test1"...

Wo liegt das Problem? Ich habe leider wirklich keine Ideen mehr...


Mit freundlichen Grüßen

Darkprodukt

Content-ID: 240388

Url: https://administrator.de/contentid/240388

Ausgedruckt am: 08.11.2024 um 02:11 Uhr

colinardo
Lösung colinardo 10.06.2014, aktualisiert am 08.08.2014 um 13:36:44 Uhr
Goto Top
Hallo Darkproduct,
du solltest dir mal deinen Debugger zur Brust nehmen und Breakpoints setzen (für sowas ist der da face-wink). Folgender minimal abgeänderter Code funktioniert hier soweit in einem CLR C++ WinForms-Projekt in VS:
// Generic List
List<String^> FileExtensions;
XmlDocument^ XmlSettings = gcnew XmlDocument;
String^ FileSettings = "settings.xml";  

if( File::Exists(FileSettings) )
{
	XmlSettings->Load(FileSettings);
	XmlNodeList^ ExtensionsList = XmlSettings->GetElementsByTagName(L"file");  

	for(int i = 0; i < ExtensionsList->Count; i++)
	{
                String^ wert = ExtensionsList[i]->InnerXml->Trim();
		if ( wert->StartsWith(L"-") == false )  
		{
			FileExtensions.Add(wert);
			serien_auswahl->Items->Add(wert);
		}
	}
}
Grüße Uwe