Hi,
ich möchte eine ArrayList mit Werten von einem eigenen Typ füllen. Es funktioniert anscheinend, aber sobald ich auf eine Eigenschaft zugreife, sagt mir der Debugger, dass es die nicht gibt:
test.cs(26,22): error CS0117: 'object' does not contain a definition for 'Title'
using System;
using System.Collections;
class Sample
{
struct Album
{
public int ID;
public string Title;
public string Artist;
public string Link;
public int Priority;
}
static void Main()
{
ArrayList testit = new ArrayList();
Album testalbum = new Album();
testalbum.ID = 12;
testalbum.Title = "titel";
testalbum.Artist = "kuenstler";
testalbum.Link = "www.kuenstler.de";
testalbum.Priority = 5;
testit.Add(testalbum);
Console.WriteLine(testit[0].Title);
}
}
Was mache ich falsch?
Hallo,
eine ArrayList legt die Elemente unter dem Typ 'object' ab, bevor du also wieder auf Eigenschaften & Methoden eines Elementes zurückgreifen musst, musst du es entsprechend kasten.
Also:
((meine_klasse)arraylist[0]).MeineEigenschaft = ...
Wenn du .Net 2.0 oder höher verwendest, solltest du generische Listen verwenden
Hallo chri,
und da das nicht der erste Syntaxfehler ist, nach dem du fragst, siehe [Hinweis] Syntaxfehler selbst lösen (Compilerfehlermeldungen)
herbivore
PS: Bitte poste Fehlermeldungen nicht in CODE-Tags sondern in QUOTE-Tags.