Простой ответ: нет всеобъемлющего способа сделать это.
Если вы полностью контролируете среду, вы можете создать оболочку класса и заставить всех клиентов вызывать ее методы Add ().
Однако большая часть кода работает с коллекцией TreeNodeCollection, которую нельзя заменить.
Итак,
myTree.Nodes[0].Nodes.Add(...);
или же
myNode.Nodes.Add(...);
или другие пути, такие как
DataBinding ...
будет обходить пользовательский метод.