Я не сразу понял вопрос, но, думаю, вы ищете что-то вроде этого:
Создайте класс под названием TreeViewBuilder с помощью всего лишь открытого метода, чтобы вернуть заполненный TreeView из существующего:
public class TreeViewBuilder
{
public static TreeView BuildTreeView( TreeView tree )
{
DataTable projects = GetProjects();
DataTable releases = GetRealeases();
return InternalTreeViewBuilder(tree, projects, releases);
}
}
Я предполагаю, что вы можете заполнить пробелы в этих решениях, например, передать нужные параметры и так далее.Также вы можете создать код для методов дерева, вызываемых из кода, который вы поместили в вопросе.Ваша процедура создания была бы теперь:
//TreeView something;
TreeViewBuilder.BuildTreeView(something);
Еще более круто, если вы используете .NET Framework более 3.5, вы можете сделать метод как расширение:
public static class TreeViewBuilder
{
public static TreeView BuildTreeView( this TreeView tree )
{
DataTable projects = GetProjects();
DataTable releases = GetRealeases();
return InternalTreeViewBuilder(tree, projects, releases);
}
}
Затем, вызываяВаш метод был бы намного проще:
//TreeView something;
something.BuildTreeView();
И все готово!В MSDN есть отличные коды для методов расширения.
Надеюсь, я смогу помочь!