static void Main()
    {
        var data = new List <int> {
            23, 15, 16, 24, -9, 11, 32, 14
        };

        var item = -9;
        var es   = new EnumerableSearcher <int>(data);
        var i    = es.IndexOf(item);

        var ec    = new EnumerableCounter <int>(data);
        var count = ec.Count();

        var em  = new EnumerableFindMax <int>(data);
        var max = em.FindMax();

        var ep = new EnumerablePrinter <int>(data);

        ep.Print();

        Console.WriteLine("Number of Items: " + count);
        Console.WriteLine("Index of {0}: {1}", item, i);
        Console.WriteLine("Maximum: {0}", max);
        Console.ReadKey();
    }
Beispiel #2
0
        //private void handleLayersChanged(Object sender, ListChangedEventArgs e)
        //{
        //    IFeatureLayer newLayer = null;
        //    IFeatureLayer oldLayer = null;

        //    if (e.NewIndex >= 0 && e.NewIndex < Map.Layers.Count)
        //    {
        //        newLayer = Map.Layers[e.NewIndex] as IFeatureLayer;
        //    }

        //    if (e.OldIndex >= 0 && e.OldIndex < Map.Layers.Count && _highlightUpdating)
        //    {
        //        oldLayer = Map.Layers[e.OldIndex] as IFeatureLayer;
        //    }

        //    if (newLayer != null && e.ListChangedType == ListChangedType.ItemAdded)
        //    {
        //        wireupFeatureLayer(newLayer);
        //    }

        //    // BUG: this shouldn't work... e.OldIndex won't be the old layer
        //    // index if it was deleted...
        //    // TODO: make unit test which confirms or refutes the above bug
        //    if (oldLayer != null &&
        //        e.NewIndex < 0 &&
        //        e.ListChangedType == ListChangedType.ItemDeleted)
        //    {
        //        unwireFeatureLayer(oldLayer);
        //    }
        //}

        private void handleViewFeaturesHighlightedChanged(Object sender,
                                                          FeaturesHighlightedChangedEventArgs e)
        {
            Trace.Info(TraceCategories.Presentation, "AttributePresenter handling " +
                       "view features highlighted changed");
#if DEBUG
            Trace.Debug(TraceCategories.Presentation, "Layer on which highlight change: " +
                        e.LayerName);
            Trace.Debug(TraceCategories.Presentation, "Highlighted features: " +
                        EnumerablePrinter.Print(e.HighlightedFeatures));
#endif

            if (_highlightUpdating)
            {
                return;
            }

            ILayer layer = Map.Layers[e.LayerName];

            IFeatureLayer featureLayer = layer as IFeatureLayer;

            if (featureLayer == null)
            {
                LayerGroup group = layer as LayerGroup;

                if (group != null)
                {
                    featureLayer = group.MasterLayer as IFeatureLayer;
                }
            }

            Assert.IsNotNull(featureLayer);

            FeatureQueryExpression viewDefinition = featureLayer.HighlightedFilter;

            IEnumerable             oids          = getFeatureIdsFromIndexes(featureLayer, e.HighlightedFeatures);
            OidCollectionExpression oidExpression = new OidCollectionExpression(oids);

            if (viewDefinition == null)
            {
                viewDefinition = new FeatureQueryExpression(new AllAttributesExpression(),
                                                            oidExpression, null);
            }
            else
            {
                ProjectionExpression projection = viewDefinition.Projection;

                if (viewDefinition.SpatialPredicate == null)
                {
                    viewDefinition = new FeatureQueryExpression(projection, oidExpression, null);
                }
                else
                {
                    PredicateExpression predicate = new BinaryExpression(viewDefinition.SpatialPredicate,
                                                                         BinaryOperator.And,
                                                                         oidExpression);
                    viewDefinition = new FeatureQueryExpression(projection, predicate, null);
                }
            }

            _highlightUpdating             = true;
            featureLayer.HighlightedFilter = viewDefinition;
            _highlightUpdating             = false;
        }