2009-05-22 8 views
2

J'ai un gridview qui est seulement montré dans un popup modal. juste avant que j'appelle le popup modal, je définis une valeur dans une zone de texte. Le gridview à l'intérieur du popup modal dépend de la valeur de cette zone de texte pour que ses données apparaissent. SO onclick Je veux recharger le gridview pour qu'il se recharge avec la valeur de la zone de texte. Des idées?Recharger un Gridview onclientclick

Répondre

5

essentiellement ... Utilisation du panneau de mise à jour, la L'événement de presse de bouton devrait déclencher le postback partiel où votre requête est réexécutée qui vous permettrait alors de faire un autre databind sur votre grille. Tout cela serait suivi d'un modalPopUp.Show() ...

CODE DERRIÈRE

protected void btnAdd_Click(object sender, EventArgs e) 
{ 
    if(!String.IsNullOrEmpty(this.txtMyValue.Text)) 
    { 
     AddValue(this.txtMyValue.Text); 
     UpdateGrid(); 
     this.UpdatePanel1.Update(); 
    } 
    else 
    { 
     //ooooops 
    } 
} 

private void AddValue(String str) 
{ 
    DataAccess.AddSomeValue(str); 
} 

private void UpdateGrid() 
{ 
    this.GridView1.DataSource = DataAccess.GetData(); 
    this.GridView1.DataBind(); 
} 

DEVANT

<asp:UpdatePanel ID="UpdatePanel1" runat="server" updatemode="Conditional"> 
    <ContentTemplate> 
     <asp:TextBox id="TextBox1" runat="server" /> 
     <asp:Button id="btnAdd" OnClick="btnAdd_Click" runat="Server"> 
     <div id="MyModalArea"> 
      <asp:GridView id="GridView1" runat="Server" ..... > 
      </asp:GridView> 
     </div> 
    </ContentTemplate> 
</asp:UpdatePanel> 
+0

Je ne l'utilise AJAX cadre. La relation est que j'ai mis en place le gridview en utilisant une source de données, mais pas par programmation. La déclaration sql dit 'Sélectionnez les données de tbl où Dept = Textbox.text' la valeur de la zone de texte ne sera pas définie avant que le OnclientClick ne soit déclenché, c'est pourquoi je veux essayer de recharger juste cette grille. Est-ce clair? Est-ce possible? – Eric

+0

Yep ... Juste besoin de déclencher les événements comme je l'ai fait ci-dessus, il suffit de remplacer les fonctions avec vos sélections, etc – RSolberg

+0

comment puis-je obtenir l'accès à cette méthode DataAccess? J'utilise VB.net mais il n'y a pas de barrière de la langue. – Eric

0

Put contenu de la fenêtre pop-up (grille et le reste il y a) dans la page ASPX séparée, puis lors de l'initialisation fenêtre, envoyer la valeur textbox comme paramètre:

MyPopupWindowContent.aspx?TextBoxValue=something 
Questions connexes