Gibt es eine Möglichkeit, einen Wert an einem bestimmten Index hinzuzufügen? Ich versuche Indexator zu machen und ich habe Listen. Gibt es einen Trick, um dies in diesem Zusammenhang zu erreichen: D
public class Multime<T>
{
private List<Multime<T>> multiSets;
private List<T> multimea;
***public Multime<T> this[int index]
{
get { return this.Multisets.ElementAt(index); }
set { this.Multisets.CopyTo(value,index); }
}***
public List<Multime<T>> Multisets
{
get { return this.multiSets; }
set { this.multiSets = value; }
}//accesori Multimea de multimi
public List<T> Multimea
{
get { return this.multimea; }
set { this.multimea = value; }
}//Accesori Multime
List<T>.Insert
vielleicht?
Aber ich würde vorschlagen, dass Sie wahrscheinlich nur abrufen/schreiben möchten - nicht einfügen:
public Multime<T> this[int index]
{
get { return Multisets[index]; }
set { Multisets[index] = value; }
}
Beachten Sie, dass es seit C # 3 einfachere Methoden gibt, diese Eigenschaften zu schreiben. Übrigens:
public List<T> Multimea { get; set; }
public List<Multime<T>> Multisets { get; set; }
Es ist im Allgemeinen auch keine gute Idee, zusammengesetzte Sammlungen direkt zu veröffentlichen. Dies bedeutet, dass Sie keinen Einfluss darauf haben, was in diesen Sammlungen passiert.
Die .Insert()
-Methode in List<T>
dient genau diesem Zweck:
someList.Insert(2, someValue);
Dies würde die someList
-Auflistung so ändern, dass someValue
am Index 2
eingefügt wird, wodurch andere Werte um einen Index nach oben verschoben werden.
Weitere Informationen hier .
Versuchen Sie es mit List.Insert
Dies sollte das Problem lösen, das Sie haben.
Kannst du List.Insert verwenden?