Scriptable Silverlight : HtmlPage « Communication « Silverlight






Scriptable Silverlight

    

<UserControl x:Class='SilverlightApplication3.MainPage'
    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'>
    <Border BorderThickness="1" BorderBrush="Black">
    <Border.Background>
      <LinearGradientBrush>
        <GradientStop Color="SteelBlue"></GradientStop>
        <GradientStop Color="White" Offset="1"></GradientStop>
      </LinearGradientBrush>
    </Border.Background>
    
    <TextBlock x:Name="lbl" Text="This is a Silverlight TextBlock."></TextBlock>
    </Border>
</UserControl>

//File: Page.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
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
{
    [ScriptableType()]
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();

            HtmlPage.RegisterScriptableObject("Page", this);
            HtmlPage.RegisterCreateableType("RandomNumbers", typeof(RandomNumbers));
        }

        [ScriptableMember()]
        public void ChangeText(string newText)
        {
            lbl.Text = newText;
        }
    }
    [ScriptableType()]
    public class RandomNumbers
    {
        private Random random = new Random();

        [ScriptableMember()]
        public int GetRandomNumberInRange(int from, int to)
        {
            return random.Next(from, to+1);
        }
    }
}

   
    
    
    
  








Related examples in the same category

1.Register object for Javascript