Exemplo n.º 1
0
    public void Select (TEntityAction action)
    {
      // DATA IN:
      // action.CollectionAction.ModelCollection
      // action.CollectionAction.ExtensionNodeCollection

      m_ComponentModelDrop.Clear ();

      if (action.NotNull ()) {
        ComponentModelCollection.Clear ();
        ItemsCollection.Clear ();

        foreach (var modelAction in action.CollectionAction.ModelCollection) {
          var componentModel = TComponentModel.Create (modelAction.Value);

          var componentModelItem = TComponentModelItem.Create (componentModel);
          componentModelItem.Select (action.CategoryType.Category); 

          ComponentModelCollection.Add (componentModelItem);
        }

        // sort collection by Name
        var sortedList = ComponentModelCollection
          .OrderBy (p => p.Name)
          .ToList ()
        ;

        ComponentModelCollection.Clear ();

        foreach (var item in sortedList) {
          ComponentModelCollection.Add (item);
        }

        foreach (var item in ComponentModelCollection) {
          item.PopulateNode (action);
        }
      }
    }