UI Controls Silverlight

    xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' 
    xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'
    xmlns:d='http://schemas.microsoft.com/expression/blend/2008' 
    xmlns:mc='http://schemas.openxmlformats.org/markup-compatibility/2006' 
    mc:Ignorable='d' 
    d:DesignWidth='640' 
    d:DesignHeight='480'>
    
        
            
                
                    
                

            

        
    

//File: Page.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Windows.Browser;
namespace SilverlightApplication3
{
    public class ItemData
    {
        public string ItemName { get; set; }
        public double X {get;set;}
        public double Y {get;set;}
        public ItemData(string strName, double nX, double nY)
        {
            ItemName = strName;
            X = nX;
            Y = nY;
        }
    }
    public partial class MainPage : UserControl
    {
        List myCities;
        String strCurrentCity;
        Double nCurrentX;
        Double nCurrentY;
        public MainPage()
        {
            InitializeComponent();
            this.Loaded += new RoutedEventHandler(Page_Loaded);
            upDateCities("uk");
        }
        void Page_Loaded(object sender, RoutedEventArgs e)
        {
            HtmlPage.RegisterScriptableObject("MySilverlightObject", this);
        }
 
        [ScriptableMember]
        public void upDateCities(string strCountry)
        {
            myCities = getCities(strCountry);
            _cities.ItemsSource = myCities;
        }
        private List getCities(string strCountry)
        {
            List ret = new List();
            
            switch (strCountry)
            {
                case "france":
                    {
                        ret.Add(new ItemData("A", 48, 2));
                        ret.Add(new ItemData("B", 43, 0));
                        ret.Add(new ItemData("C", 43, 1));
                        break;
                    }
                case "uk":
                    {
                        ret.Add(new ItemData("E", 51, 0));
                        ret.Add(new ItemData("F", 52, -1));
                        ret.Add(new ItemData("G", 55, -3));
                        break;
                    }
                case "germany":
                    {
                        ret.Add(new ItemData("Q", 52, 13));
                        ret.Add(new ItemData("W", 48, 11));
                        ret.Add(new ItemData("H", 53, 9));
                        break;
                    }
            }
            return ret;
        }
    }
}