• arcgis api for silverlight(行为和行动)


    行为和行动

    微软Expression Blend 4定义了一个标准的行为,这是可重复使用的打包代码,可以拖动到任何对象,通过更改其属性微调。行为允许您添加到您的应用程序的交互性,而无需编写任何代码。行为API由三个核心类:触发,动作和行为。的ArcGIS API for Silverlight中包含了一套行为和行动在ESRI.ArcGIS.Client.Behaviors程序集,可用于定义用户输入和地图的行为和内容的互动关系。

    注意注:

    要在您的应用程序中使用的行为和行动,您必须添加一个引用的System.Windows.Interactivity组件。该组件包含在Expression Blend的产品或Expression Blend中4 SDK(目前使用Expression Blend 4)。

    在所有的代码下面的例子中,引用的System.Windows.Interactivity,ESRI.ArcGIS.Client,和ESRI.ArcGIS.Client.Behaviors组件添加到项目中,每一个命名空间引用添加到页面中

     
    
    
    xmlns:esri="http://schemas.esri.com/arcgis/client/2009" xmlns:esriBehaviors="clr-namespace:ESRI.ArcGIS.Client.Behaviors;assembly=ESRI.ArcGIS.Client.Behaviors" xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"

    行为

    行为是由特定的控制一个触发器和行动,为。为Silverlight的ArcGIS API包含的所有行为与预定义的事件(触发)生成(行动)的结果在地图上。为您准备的行为,因此,您只需要添加一个行为,一个地图使用。下表列出了在地图上的行为,提供了描述,并为每个显示的代码示例:

     

    行为

    描述

    代码示例。

    ConstrainExtentBehavior

    地图范围限制到信封。用户不能浏览外信封中定义的行为。

     

     
    
    
    x:Name="MyMap" Extent="-120,30,-60,60"> . . .ConstrainedExtent="-120,30,-60,60"/>

     

    MaintainExtentBehavior

    维持目前的程度时,调整地图的大小。

     
    
    
    x:Name="MyMap"> . . . />

    ShowCoordinatesBehavior

    显示地图坐标下的鼠标光标时,将鼠标指针悬停在地图上。

     
    
    
    x:Name="MyMap"> . . . FormatString="{}{0:0.00} , {1:0.00}"/>

     

    操作

    一个动作是由一个触发器和一个目标。触发器是一个事件,比如一个按钮的点击事件。一个目标是使用或显示的动作的结果。为Silverlight的ArcGIS API包含的行动将始终目标的地图和它的内容。动作包括添加图形,导航地图,并使用图层。下表列出了可用的操作,提供了描述,并为每个显示的代码示例:

     

    行动

    描述

    代码示例。

    ClearGraphicsAction

    清除所有的图形,在图形层。

     
    EventName="Click"> GraphicsLayerID="MyGraphicsLayer"TargetName="MyMap" />

    MeasureAction

    显示测量距离,半径和地区。

     
    
    
    EventName="Click"> AreaUnit="SquareMiles"DisplayTotals="True" DistanceUnit="Miles"MapUnits="DecimalDegrees" MeasureMode="Polygon"FillSymbol="{StaticResource DefaultFillSymbol}"TargetName="MyMap"/>

    PanToAction

    潘到指定的几何形状。

     
    EventName="Click"> TargetName="MyMap"> X="-120" Y="43"/>

    RedlineAction

    在地图上绘制的图形,并把它们添加到图形层。

     
    EventName="Click"> Color="#FF32FF00"DrawMode="Freehand" GraphicsLayerID="MyGraphicsLayer"TargetName="MyMap"/>

    SpatialQueryAction

    在地图上的查询功能,在功能层绘制几何。绘制的图形层的结果。

     
    
    
    EventName="Click"> DrawMode="Rectangle"LayerID="MyGraphicsLayer"Url="http://myserver/ArcGIS/rest/myservice/MapServer/2"Symbol="{StaticResource GraphicsLayerFillSymbol}"TargetName="MyMap" />

    ToggleLayerAction

    切换一个层的可见性。

     
    EventName="Click"> LayerID="MyDynamicLayer"TargetName="MyMap"/>

    UpdateFeatureLayerAction

    刷新一个功能层的内容。

     
    EventName="Click"> FeatureLayerID="MyFeatureLayer"TargetName="MyMap" />

    ZoomToAction

    放大到指定的几何形状。如果几何体是一个点,在地图上会出锅。

     
    EventName="Click"> TargetName="MyMap"> XMin="-110"YMin="40" XMax="-100" YMax="50" />

    ZoomToFullExtentAction

    缩放的最大范围内的所有层。

     
    EventName="Click"> TargetName="MyMap"/>

    ZoomToLayerAction

    缩放到指定的层的程度。

     
    EventName="Click"> LayerID="MyTileLayer"TargetName="MyMap"/>
  • 相关阅读:
    HDU 1213 How Many Tables(并查集,简单)
    POJ 1611 The Suspects(并查集,简单)
    HDU 4539 郑厂长系列故事――排兵布阵(曼哈顿距离)
    POJ 2411 Mondriaan'sDream(状压DP)
    ZOJ 4257 MostPowerful(状压DP,简单)
    HDU 3001 Traveling(状压DP)
    POJ 3311 Hie with the Pie(Floyd+状态压缩DP)
    POJ 1185 炮兵阵地(状态压缩DP)
    POJ 3254 Corn Fields(状态压缩DP)
    XueXX and Chessboard(dp)
  • 原文地址:https://www.cnblogs.com/peter-pu/p/3616389.html
Copyright © 2020-2023  润新知