private void trvRepositories_BeforeSelect(object sender, TreeViewCancelEventArgs e) { if (e.Node == null) { txtRepoDetails.Text = ""; return; } if (e.Node.Tag is RepositoryList.Category) { RepositoryList.Category c = (RepositoryList.Category)e.Node.Tag; txtRepoDetails.Text = c.Description; } if (e.Node.Tag is RepositoryList.Repository) { RepositoryList.Repository r = (RepositoryList.Repository)e.Node.Tag; txtRepoDetails.Text = r.Description; } }
private TreeNode HandleRepoCategory(TreeNode parent, RepositoryList.Category c) { TreeNode tn = new TreeNode(); tn.Text = c.Name; tn.Tag = c; if (parent != null) { parent.Nodes.Add(tn); } foreach (RepositoryList.Category subc in c.Categories) { HandleRepoCategory(tn, subc); } foreach (RepositoryList.Repository subr in c.Repositories) { HandleRepo(tn, subr); } return(tn); }