Usuário com melhor resposta
Chamar Evento de uma masterpage de fora dela

Pergunta
-
Pessoal, estou com um probleminha, tenho um botao salvar dentro do update panel, esse salvar esta alimentando um treeview q esta na minha masterpage, o problema é eu nao estou conceguindo dar um post no treeview.
Alguem pode me ajudar?
Obrigado
Rogerio
Respostas
-
Rogerio, cuidado com o POG.. hehehe
Vamos lá.
Suponho que sua TreeView na Master esteja dentro de um UpdatePanel, correto?
Então, seguindo a lógica, você pode fazer o seguinte:
Em sua MasterPage (aqui denominarei de MinhaMasterPage), você adiciona um método público que vai fazer o refresh do update panel. Lembrando que o UpdateMode deve ser Conditional.
Ex:
public class MinhaMasterPage ...
{
public void AtualizarTreeView()
{
this.NomeUpdatePanel.Update();
}
}
Na sua página que herda da master, onde tem o botão clicar, poderia ficar assim:
public class NomePagina ...
{
protected void button1_Click(...)
{
...
If(this.Page.MasterPage is MinhaMasterPage)
{
((MinhaMasterPage)this.Page.MasterPage).AtualizarTreeView();
}
}
}
Seguindo essa sequencia, em teoria, você conseguirá atualizar o UpdatePanel em sua masterpage de qualquer página que a herde. É interessante criar um método pra isso (conforme demonstrado) ao invés de tentar acessar o próprio controle.
Mamão com açúcar! Se resolveu, classifique a mensagem, por favor!- Marcado como Resposta Rogerio - BI segunda-feira, 28 de setembro de 2009 14:46
Todas as Respostas
-
-
-
Opção 1:
Criar dois update na pagina independentes.
Conforme tutorial abaixo.
http://msdn.microsoft.com/en-us/library/cc295469.aspx
Opção 2:
Ou você pode fazer um refresh via javascript
Exemplo abaixo
http://www40.brinkster.com/rajbk/UpdatePanelUpdateViaScript.zip
Américo Arvani Formado em Sistemas de Informação , cursando MBA Gestão Estratégica da T.I. // MCP/MCTS - WEB -
Rogerio, cuidado com o POG.. hehehe
Vamos lá.
Suponho que sua TreeView na Master esteja dentro de um UpdatePanel, correto?
Então, seguindo a lógica, você pode fazer o seguinte:
Em sua MasterPage (aqui denominarei de MinhaMasterPage), você adiciona um método público que vai fazer o refresh do update panel. Lembrando que o UpdateMode deve ser Conditional.
Ex:
public class MinhaMasterPage ...
{
public void AtualizarTreeView()
{
this.NomeUpdatePanel.Update();
}
}
Na sua página que herda da master, onde tem o botão clicar, poderia ficar assim:
public class NomePagina ...
{
protected void button1_Click(...)
{
...
If(this.Page.MasterPage is MinhaMasterPage)
{
((MinhaMasterPage)this.Page.MasterPage).AtualizarTreeView();
}
}
}
Seguindo essa sequencia, em teoria, você conseguirá atualizar o UpdatePanel em sua masterpage de qualquer página que a herde. É interessante criar um método pra isso (conforme demonstrado) ao invés de tentar acessar o próprio controle.
Mamão com açúcar! Se resolveu, classifique a mensagem, por favor!- Marcado como Resposta Rogerio - BI segunda-feira, 28 de setembro de 2009 14:46