====== Методы вызова объектов ======
В данном разделе представлены методы классов [[api:qpage|QPage и QUserControl]], предназначенные для вызова объектов. Подробнее о вызовах объектов можно почитать [[development:object_calls|здесь]].
===== ShowObject =====
public void ShowObject(string object_name)
public void ShowObject(string object_name, object sender)
public void ShowObject(string object_name, object sender, object[] parameters)
Вызов объекта из Code Behind.
=== Параметры ===
При загрузке объекта используется модифицированная последовательность событий для того, чтобы работал [[development:values|механизм Values]]. Для того, чтобы генерировалась оригинальная последовательность событий ASP.NET, нужно использовать метод [[#ShowObjectSimple]].
* //object_name// -- имя объекта. Поддерживаются вызовы в формате ''TemplateName.ObjectName.FormatName'', при этом TemplateName и FormatName -- не обязательны.
* //sender// -- родительский контрол, в коллекцию Controls которого должен быть загружен объект. При осутствии параметра вызываемый объект будет загружен в коллекцию Controls текущего объекта.
* //parameters// -- параметры, которые будут переданы в конструктор соответствующего контрола (аналогично методу [[http://msdn.microsoft.com/ru-ru/library/ewtd66a0.aspx|LoadControl]])
===Пример===
ShowObject("Main.Menu", this);
===== ShowObjectSimple =====
public void ShowObjectSimple(string object_name)
public void ShowObjectSimple(string object_name, sender)
public void ShowObjectSimple(string object_name, sender, object[] parameters)
Аналог [[#ShowObject]], но при вызове данного метода генерируется оригинальная последовательность событий ASP.NET, что позволяет корректно восстанавливаеть ViewState для серверных контролов. Данный метод несовместим с [[api:values|механизмом Values]].
===== GetInternalCall =====
public string GetInternalCall(string object_name)
Возвращает относительный путь к контролу, который может быть использован для его явной загрузки. Поддерживаются вызовы в формате ''TemplateName.ObjectName.FormatName'', при этом TemplateName и FormatName -- не обязательны.
====== Устаревшие методы ======
Следующие методы являются устаревшими и не рекомендуются для использования:
* GetObjectFullName (используйте [[#GetInternalCall]])
* ShowControl (используйте [[#ShowObject]])
* ShowObjectNS (используйте [[#ShowObject]])