Tag Archives: Silverlight
ArcGIS Mapping for SharePoint 2.0 is available!
We are very excited to announce the release of version 2.0 of ArcGIS Mapping for SharePoint. Version 2.0 leverages the SharePoint 2010 platform and offers a wealth of new features and enhancements. A few of the highlights include:
- New look and feel – a sleek new look and feel integrates with the SharePoint 2010 ribbon and maximizes the screen area available for your map.
- Extensibility – The Map Web Part is extensible. Developers can create Silverlight extensions to interact with the map and layers, display Silverlight content inside the web part, and communicate with web services and other external components.
- Geoprocessing – ArcGIS Server Geoprocessing services can now be easily added as tools to the Map Web Part, enabling advanced spatial analysis.
- Theming – Designers can specify the colors of the pop-ups, dialogs, and panels that are shown within the Map Web Part. They can use the site theme colors or define a custom scheme.
- ArcGIS.com integration – a new Map Center is integrated into the Map Web Part and allows you to discover, open, and save maps from ArcGIS.com.
You can read more about all the new features and enhancements at 2.0 in the What’s New help topic.
Since version 2.0 of ArcGIS Mapping for SharePoint includes the ability to write extensions to the ArcGIS Map Web Part, we are also pleased to announce the unveiling of the ArcGIS Mapping for SharePoint Interactive SDK and Code Gallery. Use the interactive SDK to explore what the new extensibility endpoints enable you to develop, immediately see the code required, and download the samples. Visit the Code Gallery to view and download extensions developed by other users of ArcGIS Mapping for SharePoint.
To get started with ArcGIS Mapping for SharePoint 2.0, download the bits and install them on your SharePoint 2010 server today!
The ArcGIS SharePoint Development Team
Live on Everest – The story behind the app
There’s a nice write-up in ArcWatch magazine by ESRI Writer Susan Harp about the story behind our Live on Everest application.
If you haven’t seen the app yet, Al (@al_laframboise) and myself (@agup) built it using the ArcGIS API for Silverlight as an educational tool and cool way to aggregate all the geo-services and social media feeds related to Jordan Romero’s Everest journey.
We also presented about this project at the ESRI User Conference. You can download a PDF (5 MBs) of the presentation here.
-Andy (@agup)
The ArcGIS API for Windows Phone version 2.1 Beta is available!
We’re proud to announce that the initial beta for version 2.1 of the ArcGIS API for Windows Phone is now available for download on the resource center. The API is built on the Silverlight framework of the Windows Phone Application Platform which includes existing Microsoft tools and technologies such as Visual Studio and Expression Blend. Developers already familiar with those tools and technologies will be able to create new applications for Windows Phone without a steep learning curve.
The ArcGIS API for Windows and the ArcGIS API for Microsoft Silverlight/WPF share the same architecture, thus you can reuse knowledge and application logic in ArcGIS applications built for Windows Phone, Web, and desktop applications. However, there are some pivotal differences in platform and device capabilities. Currently these differences limit the functionality included in the initial beta release of the ArcGIS API for Windows Phone. For example, the toolkit controls or map behaviors and actions libraries are not included, maptips on graphics layers are not supported (yet), and only a limited subset of toolkit data sources (OpenStreetMap and WMS) are provided. In addition, the availability of mobile devices running the Window Phone 7 platform is limited, so the UI experence for most applications will involve the use of emulation software. Granted, the use of a touch-enabled device with the emulator can provide a interactive experience similar to a phone. Currently the ArcGIS API includes functionality in the Map and Draw objects to support a common touch and gesture experience on touch-enabled devices.
To get started:
1) Download and install the Windows Phone Developer Tools. They will integrate with Visual Studio 2010 or Expression Blend 4, or install a version of Visual Web Developer Express for Windows Phone. Note, the Windows Phone Developer Tools are only supported on WIndows Vista and Windows 7 platforms. The tools are not supported for use on a virtual machine.
2) Download the ArcGIS API for Windows Phone ZIP file from the ArcGIS resource center. Unzip the contents to a directory of your choice.
3) Use the Getting Started section in the help documentation to build your first Windows Phone application with the ArcGIS API.
For more information, use the ArcGIS for Windows Phone resource center to review concepts, peruse and download the interactive SDK, or dive deep into the APIs library reference. Also, feel free to ask questions and get help in the ArcGIS for Windows Phone forum.
Be sure to check out the Windows Phone Developer site for more information on the general Windows Phone developer experience.
Enjoy!
The ArcGIS Windows Phone Development Team
Business Analyst Online API for Silverlight – Interactive Sample Viewer
by Tony Howser
Preview and develop applications with the underlying business objects and data that power the entire Business Analyst Suite!
Part of the Business Analyst Online API …
The Business Analyst Online Application Programming Interface (API) consists of SOAP and REST services and, Silverlight and Flex (soon!) SDKs. Together, all of these services and libraries allow users to rapidly and easily develop with the underlying business objects and data that power the entire Business Analyst Suite of products. These resources enable you to add substantial value to your client applications by allowing you to easily integrate Business Analyst’s powerful analysis and rich data in your workflows.
Whether you are a programmer or not, I urge you to continue reading as you will be able to try some live example Business Analyst workflows through the Business Analyst Online API for Silverlight Interactive Sample Viewer. I guarantee that your exploration of the live samples will help you gain some quick insight into some Business Analyst workflows…because interaction is definitely more engaging than my written descriptions here!
Silverlight-based RIAs…
Silverlight is a Rich Internet Application development framework that allows programmers to rapidly create very sophisticated Web applications with a .NET-based development environment. Basically, Silverlight, like other Rich Internet Application frameworks, was created to develop advanced applications that are platform/hardware independent; can be distributed and executed over networks (usually through Web browsers); and deliver a sophisticated and seamless desktop-like application experience through a browser without the overhead of a long installation, powerful computing resources, large hard drive, etc.
|
Rich Internet Application Framework
|
Primary Development Environment
|
Programming Languages
|
| Adobe Flex | Flex Builder | XML Markup (mxml); ActionScript |
| Microsoft Silverlight | Visual Studio | XML Markup (xaml); C#, VB.NET, or other .NET languages |
Besides REST and SOAP Web services, the Business Analyst Online API currently has an API for Silverlight. (We will be releasing an API for Flex in May!) The Business Analyst Online APIs for Silverlight and Flex extend the core ArcGIS Server APIs for Silverlight and Flex, respectively; so the existing core libraries of rich mapping/UI controls/behaviors, etc. can be leveraged for rich client development with Business Analyst data and services.
Quick Start! …
The Business Analyst Online API for Silverlight Interactive Sample Viewer is a resource that was developed with the sole purpose of helping you rapidly learn about and develop with the Business Analyst Online API for Silverlight. Not only are you able to try out the “live” samples, you also have the option to download them and execute them as complete standalone Visual Studio solutions! You can access links to these solutions through the viewer. The solutions contain copiously-documented code in both C# and VB.NET and they can be executed immediately since they already reference the necessary libraries and have embedded Business Analyst Online API demo user credentials.
With a live interactive sample viewer and complete code and workflow examples that execute “out-of-the-box”, learning about and developing with the Business Analyst Online API for Silverlight could not be easier.
Enjoy!
Tony
View the Business Analyst Online API for Silverlight Interactive Sample Viewer; download the complete invidual samples; and open them up and run them with Visual Studio as shown in the screen captures below.
|
Live Sample
|
![]() |
|
XML Markup Code (xaml)
|
![]() |
|
C# Code-Behind
|
![]() |
|
VB.NET Code-Behind
|
![]() |
|
Description
|
![]() |
![]() |
|
![]() |
|
|
Complete Standalone Application to Study, Extend, Customize, & Use!
|
![]() |
Take advantage of new Silverlight 4.0 features in the ArcGIS Silverlight API
Our recent 2.0 beta release of the ArcGIS Silverlight API was built on the Silverlight 4.0 platforn, taking advantage of several of its new capabilities. Below are a few of my favorite new features:
Namespace prefixes
In Silverlight 3.0 you had to use multiple namespace prefixes to access classes in XAML that were located in different namespaces. This meant you often ended up with something like this in the page header:
xmlns:esri="clr-namespace:ESRI.ArcGIS.Client;assembly=ESRI.ArcGIS.Client"
xmlns:esriSymbols="clr-namespace:ESRI.ArcGIS.Client.Symbols;assembly=ESRI.ArcGIS.Client"
xmlns:esriGeometry="clr-namespace:ESRI.ArcGIS.Client.Geometry;assembly=ESRI.ArcGIS.Client"
xmlns:esriToolkit="clr-namespace:ESRI.ArcGIS.Client.Toolkit;assembly=ESRI.ArcGIS.Client.Toolkit"
In Silverlight 4 we can now map multiple namespaces to the same xmlns prefix, and the 2.0 API takes full advantage of this both in Silverlight and WPF. This means that you don’t have to declare multiple prefixes for core, geometry, symbols, toolkit, etc… but can just use one for them all:
xmlns:esri="http://schemas.esri.com/arcgis/client/2009"
This is what it looks like in intellisense:

So even though the following four objects are all in different namespaces, the namespace prefix is the same:
<esri:Map />
<esri:Navigator />
<esri:MapPoint />
<esri:SimpleMarkerSymbol />
Graphic.Attributes Binding
Before Silverlight 4, support for binding to dictionaries was lacking compared to WPF, and you had to use a custom converter to access attributes on a graphic feature. In Silverlight 4.0, this is now much easier, and you will never have to use the DictionaryConverter again (round of applause please):
Silverlight 3 (assuming the DataContext is the Graphic.Attributes, for example inside a MapTip):
<Grid.Resources>
<esriConverters:DictionaryConverter x:Key="MyDictionaryConverter" />
</Grid.Resources>
<TextBlock Text="{Binding Converter={StaticResource
MyDictionaryConverter},ConverterParameter=StateName}" />
Silverlight 4:
<TextBlock Text="{Binding [StateName]}" />
Even more interesting is that you can now update your attributes inside a map tip by simply using Two-Way binding on a textbox:
<TextBox Text="{Binding [StateName], Mode=TwoWay}" />
From now on consider the DictionaryConverter to be obsolete.
The attributes type has also been updated (implements IDictionary) so if you bind to the attributes and change any values, it will automatically trigger a rebind.
Printing
By far the #1 requested feature, not only for our API, but also for Silverlight in general. Silverlight 4 finally comes to the rescue and provides an API for printing. You simply give it a control to print:
PrintDocument doc = new PrintDocument();
doc.PrintPage += (s, e) =>
{
e.PageVisual = MyMap;
e.HasMorePages = false;
};
doc.Print("Map");
Binding to DependencyObject
Prior to Silverlight 4, you were only allowed to set binding expressions on objects that inherit from FrameworkElement. This limitation has been relaxed so now you can bind to anything that inherits from DependencyObject (like in WPF). This means you can bind an attribute to a symbol and rotate it based on the attribute value. Example:
<esri:MarkerSymbol x:Key="MySymbol">
<esri:MarkerSymbol.ControlTemplate>
<ControlTemplate>
<TextBlock Text="=>">
<TextBlock.RenderTransform>
<RotateTransform Angle="{Binding Attributes[Heading]}" />
</TextBlock.RenderTransform>
</TextBlock>
</ControlTemplate>
</esri:MarkerSymbol.ControlTemplate>
</esri:MarkerSymbol >
Design Time editor in Visual Studio 2010
Visual Studio 2010 now supports previewing and editing your XAML in design view, similar to what you did in Expression Blend. Our design time support works the same way in Visual Studio as in Blend, so you can now use Visual Studio to do some quick design-time editing. However, I do believe Blend is still an invaluable tool and has very powerful support for creating good looking layouts, animations, etcetera.
Morten Nielsen
Senior Software Engineer
ArcGIS Server.NET, Silverlight/WPF, MapIt
Testing Public Safety Workflows at ArcGIS 10 (Part 2)
To follow up on my previous blog post, I wanted to pass along additional information on the projects that the Public Safety team worked on, as part of our week in the Holistic Testing lab. In addition to the ArcGIS Desktop GIS projects that were highlighted previously, we also had several people focused on ArcGIS Server (Web and Mobile) workflows to support the Public Safety community:
1. ArcGIS Mobile: ArcGIS 10 provides several enhancements on the mobile side that are important to public safety organizations. One significant addition is the ability to extent mobile projects to tablet-based PC’s using a ready-to-deploy app. This application supports a new “View Field Crew” task; being able to see the location of mobile workers both in the field and back in the command center/office is helpful to efficiently task teams to carry out the mission in addition to enhancing safety. Photos can also now be captured directly on the device and embedded inside the feature as either a Raster or Blob object. Check out the screen snapshots, below, for a quick look:
A photo captured in the field displayed as a feature attribute in
Desktop:
2. Web Apps using the JavaScript API: The new ArcGIS Server Web API for JavaScript (version 2.0) provides powerful new tools for building an effective community mapping Web app for Law Enforcement. Two exciting new features were tested: Feature Service and Time-Enabled Service. Using sample crime datasets, one tester created a Web application using the new JSAPI that would allow community members to report information by sketching on the map, and have this new data stored directly in a Geodatabase. It’s interesting to imagine how Law Enforcement agencies could use these new techniques to gather intelligence from the public; for example, a user could draw a single point location on the map to report suspicious activity, or sketch an outline of an area of concern and add comments. Also tested was the ability to use time-enabled services. A tool called “time slider” lets the user visually adjust the particular time window to determine what crimes are displayed on the map – this assists in understanding not only the spatial aspects of crime patterns, but temporal patterns as well. See the screen snapshots, below, of our early prototype:
Feature services allow simple user sketching to create data on a map:
![]()
The time-slider control lets users easily filter incidents based on date:
![]()
3. Web Apps using the Silverlight API: in addition to the JSAPI, we also had testers working on the newest version of the Silverlight API (version 2.0) and its potential applications in Law Enforcement. Of particular interest are the Feature Service and Time-Enabled Service (sound familiar?!). Our Silverlight testing focused on prototyping an internal Web app that officers within a Police Department would use for fairly typical crime analysis tasks – querying, mapping and charting – but we dressed things up a bit with a time-slider filter for the dates. Time-enabling the map, both in the Desktop and Server, is something that we see as a very compelling use-case, so we wanted to make sure we understood the process in several different client environments. You can see the screen snapshots of our results, below:
Performing a query results in a bi-directional bar chart and map, giving two views of the results:
![]()
The time-slider control filters the incidents by date, on the map and the data grid:
![]()
So this concludes the test of ArcGIS 10 for Public Safety! We hope that you find this informative, as you start looking forward to the next release and how it can help enhance your applications and workflows. As always, we look forward to your comments and suggestions.
Planning your DevSummit: Web APIs
This is the first post in the Planning your DevSummit series aimed at helping you make the most of your time at the 2010 Developer Summit. We’re really excited by the technical sessions, user presentations, demo theaters and seminars we’ve got lined up for you and there is certainly a lot to take in. Hopefully we can help make planning your days at the DevSummit that little bit easier.
The Technical Sessions
Server developers have a rich set of sessions available this year so I’ve split them into three Planning your DevSummit posts covering Web APIs, Working with Services, and Administering ArcGIS Server.
This first post covers sessions related to our JavaScript, Flex and Silverlight/WPF APIs. Whether you’re already using them, or want to find out how to get started, we have a lot of sessions that will help you.
Day 0: Presummit Seminars
A 3 hour seminar on Monday entitled Getting Started with the ArcGIS Web Mapping APIs (8:30am) discusses the 3 APIs and typical workflows for building your own applications. Attend this session if you are interested in learning about what’s common between these APIs and how to build applications (using the JavaScript API for the examples).
Day 1
If you’re new to Server development and are looking for an in-depth introduction, A Developer’s Guide to ArcGIS Server (1:00pm) will provide an overview of ArcGIS Server’s capabilities and this might help you decide which other sessions you might want to attend.
There are then three overview sessions for the Web APIs in case you didn’t attend the Presummit Seminar mentioned above:
- An Overview of the ArcGIS APIs for JavaScript (2:45pm)
- An Overview of the ArcGIS APIs for Silverlight/WPF (2:45pm)
- An Overview of the ArcGIS APIs for Flex (2:45pm)
These beginner-level sessions introduce you to each respective API, discuss how to get started with it, how to best use the developer resources, and go through creating your first application. You won’t need to know any Flex, Silverlight or JavaScript for these sessions.
Using and Extending the ArcGIS WebMap for Flex (4:30pm) introduces the new out-of-the-box web mapping application built on the ArcGIS API for Flex. Be sure to catch this one if you are interested in RIA Flex mapping solutions. Again, you won’t need to know any Flex for this.
Day 2
Three Web API specific sessions are available on day two which assume a little more experience with the Web APIs. They go over the new features available in ArcGIS Server 10 and how to make use of them.
- Working with the ArcGIS API for Flex (10:30am)
- Working with the ArcGIS API for Microsoft Silverlight/WPF (2:45pm)
- Working with the ArcGIS API for JavaScript (4:30pm)
These sessions will be repeated at the end of Day 3.
If you’re using (or planning on using) the Web APIs to work with ArcGIS Online Enhancing your Applications with ArcGIS Online (1:00pm) is worth considering.
Day 3
The last day offers three sessions on Patterns and Best Practices (again, one for each Web API):
- Patterns and Best Practices for Building Applications with the ArcGIS API for Microsoft Silverlight/WPF (8:30am)
- Patterns and Best Practices for Building Applications with the ArcGIS API for JavaScript (10:15am)
- Patterns and Best Practices for Building Applications with the ArcGIS API for Flex (10:15am)
These sessions look at common problems during design and development and talk about how to overcome them to provide the best user experience built on top of solid, maintainable code.
In case you missed them, the very last session at 1:30pm repeats the Working with the ArcGIS API sessions from Day 2 (see above) for Microsoft Silverlight/WPF, JavaScript and Flex.
Lastly, I should also mention the Developer-to-Developer: The ESRI Development Process (8:30am) session, as it will be useful and of interest to any developer.
More Details
You can download the complete Web API Sessions Overview as a PDF document to print out and bring with you to the DevSummit as a convenient reference.
In the run-up to the DevSummit we’ll be posting more of these guides to help you pick out the sessions you’ll likely want to attend, and we’ll also be discussing the User Presentations. These are the guides you can look forward to:
- ArcGIS Server: Web APIs (Overview PDF)
- ArcGIS Server: GIS Services (Overview PDF)
- ArcGIS Server: Administration (Overview PDF)
- ArcGIS Desktop (Overview PDF)
- ArcGIS Mobile (Overview PDF)
- ArcGIS Geodatabase (Overview PDF)
- ArcGIS Geoprocessing (Overview PDF)
If you’ve got suggestions for what you’d like to see in these guides, let us know.
- Nick
Developing an Application with the Business Analyst Online Silverlight API – Part 1
by Garry Burgess
Last week we announced the release of the Business Analyst Online Silverlight API. Today we will show you how you can quickly get off the ground and start working with this new API.
The instructions in this walkthrough assume you already have a properly setup development environment for building Silverlight 3 applications. Specifically, you will need:
- Visual Studio 2008 SP1 (or newer)
- Silverlight 3 Tools for Visual Studio 2008 (add-on)
- An internet connection to call the Business Analyst Online API
- (Optional) Microsoft Expression Blend 3 (tool for WYSIWYG-style UI design alongside Visual Studio)
Please be sure to setup and verify your Silverlight 3 development environment prior to continuing this walkthrough. For details about the Microsoft products required to build ArcGIS Silverlight applications, consult the Silverlight help here: http://resources.esri.com/help/9.3/arcgisserver/apis/silverlight/help/index.html
There is also a very good resource on how to get started building Silverlight Applications from Microsoft here: http://silverlight.net/getstarted/
With these prerequisites out of the way, let’s download the Business Analyst Online API and sample application.
(1) Start by going to the Business Analyst Online API Resource Center and clicking on the link for the Silverlight API.
http://resources.esri.com/help/9.3/BusinessAnalyst/Docs/OnlineAPIs/Silverlight.htm
On this page there is a live sample where you can geocode an address, create a trade area and produce a demographic report in ZIP Code 92373. In part 1 of this post, we are going to download the Visual Studio solution for this application and get it working locally.
(2) On the Resource Center page, click on the link on the “Site Report Application Template” link to download the source code for this sample application.
(3) You will be re-directed to the Code Gallery. Click the “Download Now” button and read over the license agreement (if you are so inclined) and click to agree to start the download.
(4) Unzip the file to a local directory and open up Visual Studio 2008. Navigate to and open the solution you just downloaded – the file is called “SiteReportTemplate_BAOSilverlight.sln” and is in the “SiteReportTemplate” directory.
Ok, with all the downloading out of the way, you are now ready to use the Business Analyst Online Silverlight API!
Let’s start with a tour of the Visual Studio Solution. Start by expanding the References folder in the Solution Explorer. As the image illustrates below, there are three ESRI assembly references here:
There are two references from the core ESRI Silverlight SDK (ESRI.ArcGIS.Client and ESRI.ArcGIS.Client.Toolkit). These two assemblies provide the core mapping capabilities and are required to use the Business Analyst Online API. ESRI.ArcGIS.Client.BAO is the Business Analyst Online assembly and provides everything you need to work with to create trade areas, run reports and the like.
You can go ahead now and build the solution using the Visual Studio menu – Build > Build Solution
After the solution is finished building, you can launch the application by going to the Solution Explorer and right-mouse clicking “SiteReportTemplate_BAOSilverlightTestPage.html” and selecting View in Browser.
You now have a working version of the Business Analyst Only Silverlight API application template working locally in your development environment – how cool is that!
In our next Blog, we will take a look under the hood and show you some tips and tricks for developing with the Silverlight API.
Happy coding.
The Business Analyst Development Team
Business Analyst Online Silverlight™ API Available on the Resource Center
by Garry Burgess
We are pleased to announce the release of the Business Analyst Online Silverlight™ API. This new API enables you to create rich internet and desktop applications that utilize the powerful market analysis capabilities of ESRI Business Analyst.
The Business Analyst Online Silverlight API extends the capabilities of ESRI’s core Silverlight SDK with methods to create trade areas, run demographic reports, produce comparative analytics and the like. This new API greatly shortens the development time for creating Silverlight applications that utilize the Business Analyst Online API and makes it easy to develop using Microsoft’s Expression Blend and Visual Studio.
Version 1.1 of the Business Analyst Online Silverlight API is now available for download on the ArcGIS Server Resource Center.
http://resources.esri.com/help/9.3/BusinessAnalyst/Docs/OnlineAPIs/Silverlight.htm
The new Resource Center page for the Silverlight API includes:
- Download to the Silverlight assemblies for the Business Analyst API
- A complete set of developer documentation replete with downloadable code samples
- Object Model Diagrams
- A working live sample of the Silverlight API that demonstrates the use of several Business Analyst Online Silverlight API components
- A link to download the source code for the sample application
Version 1.1 of the core ESRI Silverlight SDK is required to use this API. Details about ESRI Silverlight SDK including a download to the latest version can be found here:
http://resources.esri.com/arcgisserver/apis/silverlight/
Note – Silverlight 3 is now required with version 1.1.
Several blogs that illustrate how to use this new API will follow in the near future. Stay tuned!
The Business Analyst Development Team
The ArcGIS API for Microsoft Silverlight/WPF version 1.1 is available!
Version 1.1 of the ArcGIS API for Microsoft Silverlight/WPF is now available for download on the ArcGIS Server Resource Center. The API includes a set of feature, functionality, and integration enhancments. One notable difference; you’ll download a setup executable which will install and configure Silverlight and WPF assemblies, components, and templates with Expression Blend and Visual Studio. Here are a few highlights of what’s new:
- Silverlight 3 is now required with version 1.1. Silverlight 2 is no longer supported.
- Silverlight 3 supports element binding, which means you can bind the Map property of a Navigation control to a Map using XAML – no code behind.
- A complete, interactive design-time experience in Expression Blend 3. You can drag, drop, and configure ArcGIS Silverlight and WPF controls on the artboard.
- A set of Silverlight templates are integrated with Expression Blend 3 and Visual Studio 2008. The templates provide a pre-configured, pre-styled, customizable architecture that enables you to create production worthy mapping applications quickly and easily.
- Expression Blend 3 introduced behaviors, which are reusable pieces of packaged code that define interactive relationships between controls using XAML. A new ArcGIS Silverlight and WPF library, ESRI.ArcGIS.Client.Behaviors.dll, includes a set of behaviors and actions to define interactive relationships between user input and Map behavior and content.
We invite you to try the new Interactive SDK to see the new features and functionality in action. In addition, we’ve created an interactive Symbol Gallery for you to peruse and copy marker, line, and fill symbols for use in your application.
Enjoy!
The ArcGIS Silverlight/WPF Development Team

















