Kleiner ergänzender Tipp aus meiner Gewohnheit: Statt
Code:
if (treeCatalog.SelectedNode.Tag != null)
{
ProductItem prodItem;
prodItem = (treeCatalog.SelectedNode.Tag as ProductItem);
kannst du auch eine der folgenden Möglichkeiten wählen:
Code:
if (treeCatalog.SelectedNode.Tag is ProductItem) {
ProductItem prodItem = treeCatalog.SelectedNode.Tag as ProductItem;
...
}
oder
Code:
ProductItem prodItem = treeCatalog.SelectedNode.Tag as ProductItem;
if (prodItem != null) {
...
}
Ist in meinen Augen übersichtlicher, weil schneller ersichtlich wird, was man vorhat. Wenn du C# 3.0 verwenden kannst macht var das natürlich noch kürzer, der Compiler kann aus dem as-Cast den Typ ermitteln. Geht übrigens auch, wenn man .NET-Framework 2.0 als Target hat.