その先にあるもの…

JObject를 Treeview에 넣기 본문

프로그래밍/C#

JObject를 Treeview에 넣기

specialJ 2023. 12. 18. 15:09

TreeNode rootNode = CreateNode( root );
tree.Nodes.Clear();
tree.Nodes.Add(rootNode);

private TreeNode CreateNode(JToken token, string name = "")
{
TreeNode node = new TreeNode(name);

if (token is JValue valueToken)
{
node.Text = valueToken.Value.ToString();
}
else if (token is JObject objectToken)
{
node.Text = string.IsNullOrEmpty(name) ? "Object" : name;
foreach (var prop in objectToken.Properties())
{
node.Nodes.Add(CreateNode(prop.Value, prop.Name));
}
}
else if (token is JArray arrayToken)
{
node.Text = string.IsNullOrEmpty(name) ? "Array" : name;
for (int i = 0; i < arrayToken.Count; i++)
{
node.Nodes.Add(CreateNode(arrayToken[i], $"[{i}]"));
}
}
else
{
node.Text = token.ToString();
}

return node;
}

'프로그래밍 > C#' 카테고리의 다른 글

DeserializeObject시 null 데이터를 0으  (0) 2023.12.04
함수 마라미터로 Predicate<>  (0) 2016.03.30
using문 사용  (0) 2016.02.02
ConditionalAttribute  (0) 2015.08.04
char to int  (0) 2014.12.04
Comments