Вместе с
ASP.NET MVC поставляется
JQuery (
краткое описание).
Предположим, что Silverlight-приложение используется на одной из страниц ASP.NET MVC проекта, на которой есть вызов JQuery. Т.е. в html-коде страницы в head указан тег:
| <script type="text/javascript" src="Scripts/jquery-1.3.2.min.js"></script> |
Требуется получить границы тега button:
| <button id="btn">test</button> |
Решение: использовать JQuery-функцию
offset.
Для этого в Silverlight-приложение надо добавить следующий extension method:
| public static class JQueryHelper |
| | public static Rect GetBounds(this HtmlElement el) |
| | ScriptObject jqo = HtmlPage.Window.CreateInstance("$", new[] { el }); |
| | private static Rect GetBounds(ScriptObject jqo) |
| | ScriptObject res = (ScriptObject)jqo.Invoke("offset"); |
| | (double)res.GetProperty("left"), |
| | (double)res.GetProperty("top"), |
| | (double)jqo.Invoke("width"), |
| | (double)jqo.Invoke("height") |
Координаты кнопки можно получить следующим образом:
| Rect rect = HtmlPage.Document.GetElementById("btn").GetBounds(); |
| System.Diagnostics.Debug.WriteLine(rect); |
Комментариев нет:
Отправить комментарий