bevöl Ich habe diese Struktur der Klassen:C WinForms # TreeView von List <myObj>
public class L3Message
{
public int Number { get; set; }
public string MessageName { get; set; }
public string Device { get; set; }
public string Time { get; set; }
public string ScramblingCode { get; set; }
public List<Parameter> Parameters { get; set; }
public L3Message()
{
Parameters = new List<Parameter>();
}
}
public class Parameter
{
public int numOfWhitespaces { get; set; }
public string ParameterName { get; set; }
public string ParameterValue { get; set; }
public Parameter Parent { get; set; }
public List<Parameter> SubParameters { get; set; }
public Parameter()
{
SubParameters = new List<Parameter>();
}
}
So, als Rückgabetyp von einem meiner Methoden I List
von L3Messages
(List<L3Message>
) haben, und ich brauche, dass zur Karte zu TreeView
in WinForms
(bevölkern TreeView
von diesem List
).
EDIT: Bitte beachten Sie, dass Baum meiner Objekte können tiefer als eine Ebene sein (becouse Klasse Parameter haben prop Liste < Parmaeter> (Liste der Parameter-Objekt, gleiche Struktur wie root-Parameter-Objekt)), so dass Mittel Rekursion oder so ähnlich.
EDIT2:
Hier pic des Baumes, aber dieser Baum aus Textdatei Basis auf Whitespaces erstellt wird, so dass hier alle Parameter ist, in meinem Baum Ich brauche nur eine von Liste der L3Message Objekte.
http://imageshack.us/photo/my-images/803/treeviewmessage.png/
EDIT3:
Ich bin sicher, dass mein TreeView, so etwas zu sein braucht:
L3Message.Number: L3Message.MessageName
+L3Message.Time
+L3Message.Device
+L3Message.ScramblingCode
+L3Message.Parameters[0]
++Parameter.ParamaeterName: Parameter.ParameterValue
++ (same as above)
L3Message.Number: L3Message.MessageName
+L3Message.Time
+L3Message.Device
+L3Message.ScramblingCode
+L3Message.Parameters[0]
++Parameter.ParamaeterName: Parameter.ParameterValue (in this occasion Value is null)
+++SubParameter.ParameterName: SubParameter.ParameterValue
So etwas
Wenn möglich, würde ich gerne dazu in separaten Thread.
Wie kann ich das erreichen?
Zunächst einmal denke ich, sollten Sie 'L3Message' von' Parameter' ableiten, da es einfacher wäre, zu verwalten. Tatsächlich scheint es, dass 'L3Message' ein Spezialfall von' Parameter' ist. – Tudor
Ich habe versucht, es zu googeln, weil ich meine Logik mit C# -Code nicht abbilden kann, weil ich ziemlich neu in .NET und C# bin. :-) – JohnDoeKazama
@JohnDoeKazama: Kannst du die Klassenstruktur ändern, um 'L3Message' von' Parameter' abzuleiten?Wenn Sie darüber nachdenken, würde es die Verwaltung viel einfacher machen. – Tudor