public class BasePage : Page
{
private ScriptManager scriptManager;
public BasePage() : base()
{
//Kreiraj script manager
scriptManager = new ScriptManager();
//Dodaj go vo kolekcijata Items na page klasata.
Page.Items[typeof(ScriptManager)] = scriptManager;
this.Init += new EventHandler(BasePage_Init);
}
void BasePage_Init(object sender, EventArgs e)
{
//Izvadi go od Items kolekcijata
Page.Items[typeof(ScriptManager)] = null;
//Kreiraj go na novo scriptmanager-ot i dodaj go kako prva kontrola na formata
scriptManager = new ScriptManager();
scriptManager.ID = "baseScriptManager";
scriptManager.LoadScriptsBeforeUI = true;
Form.Controls.AddAt(0, scriptManager);
}
}
Доколку имате потреба од додавање на scriptmanager програматски во основна страна и сакате да користите UpdatePanel а притоа не сакате да се секирате дали сте додале scriptmanager, или scriptmanagerproxy
во прилог имате една основна страна и начин како истото да се изведе.
Егзибицијата за додавање во конструктор на scriptmanager во колекцијата Items е заради начинот на кој што е напишан UpdatePanel кој во својот handler Init го бара scriptmanager-от во истата колекција. Доколку го нема јавува грешка дека не постои scriptmanager на страната. од тие причини прво го лажеме updatepanel дека постои scriptmanager; а после тоа си тераме стандардно .
Posted
Thu, Jun 4 2009 10:26
by
ljupce