וובמאסטר - תיכנות ובניית אתרים

מדריך Silverlight – גישה ל HTML מתוך Silverlight

arikp ,‏ מכללת סלע‏ ‏/‏ 21 יולי, 2011
F+
F-

הקדמה

אפליקציות Silverlight מתארחות בתוך דף HTML. הן יכולות לתפוס את כל העמוד או רק חלק ממנו.
לפעמים נצטרך למצוא דרך לתקשר מתוך אפליקציית ה Silverlight אל האובייקטים בדף ה HTML. במקרים אחרים נצטרך את הכיוון ההפוך, לגשת מתוך דף ה HTML שבו אנו מתארחים אל אפליקציית ה Silverlight.

בפרק זה נראה כיצד נוכל לגשת מתוך אפליקציית ה Silverlight אל האובייקטים בדף ה HTML, בפרק הבא נראה את הכיוון ההפוך.

גישה מ Silverlight לדף HTML

לאפליקציית Silverlight יש גישה מלאה לדף ה HTML המכיל אותה כולל כל האובייקטים שהדף מכיל.

הגישה למידע על דף ה HTML מתבצעת באמצעות המחלקה הסטטית System.Windows.Browser.HtmlPage.

התכונה BrowserInformation של HtmlPage מכילה את כל המידע הרלוונטי לגבי הדפדפן שמריץ אותנו כרגע, כולל: סוג הדפדפן, פלטפורמה, גרסה ועוד.

לדוגמא, קטע הקוד הבא מדפיס מידע לגבי הדפדפן בלחיצה על הכפתור:

  string message =
   
string
.Format(
   
"Browser name: {0}\nPlatform: {1}\nProduct: {2} {3}",
    HtmlPage.BrowserInformation.Name,
    HtmlPage.BrowserInformation.Platform,
    HtmlPage.BrowserInformation.ProductName,
    HtmlPage.BrowserInformation.ProductVersion);

  MessageBox.Show(message);

התוצאה:

מדריך Silverlight – גישה ל HTML מתוך Silverlight

 

התכונה Plugin של HtmlPage מספקת מידע לגבי הPlugin של Silverlight שנמצא כרגע בשימוש בדף.

התכונה Window של HtmlPage דומה לתכונה document.Window ב JavaScript.

התכונה אולי הכי חשובה של HtmlPage היא Document שמאפשרת גישה למסמך ה Html עצמו.

בדוגמת הקוד הבאה אנו ניגשים מתוך Silverlight לאלמנט מסוג כפתור שמוגדר בדף וקובעים לו את תוכן שונה:

HtmlDocument htmlDoc = HtmlPage.Document;
htmlDoc.GetElementById(
"jsButton").SetProperty("value", "Changed from Silverlight!");

 

כדי להריץ דוגמא זו יש להוסיף לדף HTML שמכיל את אובייקט ה Silverlight שלנו כפתור בשם jsButton באופן הבא:

<input type="button" value="HTML Button" id="jsButton" />

arikp, מכללת סלע

אריק פוזננסקי הוא יועץ בכיר ומרצה בסלע. הוא השלים שני תארי B.Sc. במתמטיקה ומדעי המחשב בהצטיינות יתרה בטכניון. לאריק ידע נרחב בטכנולוגיות מיקרוסופט, כולל .NET עם C#, WPF, Silverlight, WinForms, Interop, COM/ATL, C++ Win32 ו reverse engineering.
תגיות: מדריך‏  /  פיתוח‏  /  SilverLight‏  

תגובות בפייסבוק

תגובות למאמר



תגיות פופולאריות

מערכות תוכן

וובמאסטר © כל הזכויות שמורות