Une classe TreeNode aComment ajouter des valeurs à une classe TreeNode en C#
Nom du texte Tag
Je dois attribuer plus de valeurs à une classe TreeNode comme flottant1, float2, ... float6.
Comment puis-je faire cela ??? pls aider.
Thx, Caslav
Une classe TreeNode aComment ajouter des valeurs à une classe TreeNode en C#
Nom du texte Tag
Je dois attribuer plus de valeurs à une classe TreeNode comme flottant1, float2, ... float6.
Comment puis-je faire cela ??? pls aider.
Thx, Caslav
Vous pouvez créer une nouvelle classe qui hérite de la TreeNode. Pour chaque valeur que vous souhaitez stocker dans le todeode, créez une propriété pour cette valeur. Lorsque vous travaillez avec Treeview, il vous suffit de convertir le TreeNode en votre classe TreeNode personnalisée.
Exemple:
public class JobTreeNode : TreeNode {
private int intField1;
public int Field1 {
get {
return intField1;
}
set {
intField1 = value;
}
}
}
Utilisation (ajouté après commentaires)
// Add the node
JobTreeNode CustomNode = new JobTreeNode();
CustomNode.Text = "Test";
CustomNode.Field1 = 10
treeView1.Nodes.add(CustomNode);
// SelectedNode
((CustomNode)(treeView1.SelectedNode)).Field1;
Vous pouvez créer une classe légère pour tenir votre float1..6 et mettre un exemple dans la balise propriété.
Alternativement, vous pouvez utiliser un Dictionary<TreeNode, FloatsClass>
ou peut-être utiliser 6 séparés Dictionary<TreeNode, float>
. Notez que dotNet 4 a un nouveau type Tuple<A,B,C,...>
pour rendre ce genre de situation un peu plus facile.
La propriété Tag de TreeNode est "object". Ne pouvez-vous pas simplement stocker vos données à l'aide d'une sorte de base de données?
J'ai essayé mais je ne peux pas afficher les valeurs dans la zone de texte lorsque je sélectionne un nœud. Exemple: textbox1.Text = treeView1.SelectedNode.Name.ToString(); <- fonctionne textbox2.Text = treeView1.SelectedNode.IntField ou IntField1.ToString(); <- ne fonctionne pas – Caslav
Vous devez cast le SelectedNode. Quelque chose comme ceci: ((CustomNode) (treeView1.SelectedNode)). Field1; – Rhapsody
Vous devez également vous assurer que vous ajoutez des éléments _Add_ JobTreeNode. –