Для связи между элементом управления Silverlight и javascript на странице ASP.net вы можете использовать HTML-мост .По сути, это позволяет вам вызывать специально помеченные методы в элементе управления Silverlight, а также вызывать подпрограммы javascript из Silverlight.
Пометка метода или атрибута Silverlight как доступных для javascript:
public partial class Page : UserControl
{
void Page_Loaded(object sender, System.Windows.RoutedEventArgs e)
{
// Register this object in the page as Scriptable
// so it can be accessed from within JavaScript
HtmlPage.RegisterScriptableObject("Page", page);
}
[ScriptableMember]
public string HelloFromSilverlight()
{
return "Hello";
}
[ScriptableMemberAttribute]
public int SomeValue
{
get
{ return _someValue;}
}
}
Вызов метода Silverlight из javascript:
// Get a reference to the actual Silverlight
// plugin element within the page
var plugin = pluginObject.get_element();
// Call the HelloFromSilverlight method of our Silverlight object
var text = plugin.Content.Page.HelloFromSilverlight();
Также см. Другие примеры:
- http://www.dotnetspider.com/resources/36450-How-work-with-HTML-DOM-SIlverlight.aspx
- http://geekswithblogs.net/PeterTweed/archive/2009/08/08/html-bridge---silverlight-javascript-interop.aspx