Достъп до HTML DOM (документен обектен модел) от Silverlight - всичко за ИТ и програмиране
Написано на 04 февруари 2009 г. Публикувано в WPF и Silverlight
За да направите това, добавете следното към раздела uses C# на файла Page.xaml.cs:
Нека сега добавим бутон към страницата Page.xaml, който ще има името "mainButton", и задайте събитието за клик върху бутона. Ето изходния код на страницата:
Нека отворим страницата MySilverlightApplicationTestPage.aspx в ASP.NET приложение и да разгледаме кода за инжектиране на приставката Silverlight.
Тагът asp:Silverlight е вътре в тага div. Нека кръстим div "myDIV" и променим стила.
Също така ще зададем ширината на плъгина Silverlight на W вместо на 100%.
Сега нека напишем кода за обработка на щракване върху бутон:
С този код получаваме HTML документ, намираме елемент в HTML документ и задаваме стила за този елемент. Така в приложението Silverlight имаме богати възможности за промяна на външния вид и съдържанието на HTML страницата.
Освен това можем да обработваме събития на HTML страници в нашия C# код. За да направите това, добавете следния код към манипулатора за щракване върху бутон, Button_Click:
Ние се прикачваме към събитието click върху свободното пространство на елемента div. С това щракване цветът на фона се променя на жълт. Тук ламбда израз се използва за манипулатор на събития. Ето пълния код за манипулиране на бутони:
Тъй като това е тестов случай, всеки път, когато се щракне върху бутона, се абонира за събитие. В реални приложения това не може да се направи и този код трябва да се премести в секцията за инициализация. Например така:
Тук се абонираме за събитието, от което се нуждаем в конструктора на страницата.
Нека стартираме това приложение. Да натиснем бутона. Синьото пространство ще стане зелено. Сега щракнете върху зеленото пространство и то ще стане жълто.