这里讲述如何在silverlight里取得html或aspx页里的html控件并注册自定义事件以达到silverlight可以与之交互的效果。
1.***TestPage.aspx
这里请注意我添加了一个html按扭控件:<input id="button1" type="button" value="click me" />
2.Page.xaml.cs
工程文件请我上传的资源中下载.
1.***TestPage.aspx
这里请注意我添加了一个html按扭控件:<input id="button1" type="button" value="click me" />
- <body style="height:100%;margin:0;">
- <form id="form1" runat="server" style="height:100%;">
- <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
- <input id="button1" type="button" value="click me" />
- <div style="height:80%;">
- <asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/domsl.xap" MinimumVersion="2.0.30523" Width="100%" Height="100%" />
- </div>
- </form>
- </body>
- public Page()
- {
- InitializeComponent();
- this.Loaded += new RoutedEventHandler(Page_Loaded);
- }
- void Page_Loaded(object sender, RoutedEventArgs e)
- {
- //取得控件
- HtmlElement he = HtmlPage.Document.GetElementById("button1");
- //为控件注册事件
- he.AttachEvent("onclick", (EventHandler)myhanddle);
- }
- //控件事件
- void myhanddle(object sender, EventArgs args)
- {
- //改变sl里的背景颜色
- this.LayoutRoot.Background = new SolidColorBrush(Colors.Gray);
- }