2011-01-13 2 views
0

J'ai un 2 usercontrol sur une page aspx. 1 contrôle est d'avoir crétorelle de recherche et le bouton de recherche et le 2e usercontrol a gridview.Lier gridview sur le contrôle utilisateur

Comment lier gridview lorsque l'utilisateur entre creteria et cliquez sur le bouton de recherche.

Répondre

1

L'événement click doit être passé à la page aspx puis transmis à la commande usb gridview. Voir le lien suivant comment faire des bulles d'événements.

http://odetocode.com/code/94.aspx

0

Compte tenu du 1er UserControl produit un DataTable. Spécifiez une propriété dans 2nd UserControl qui accepte le datatable et le lie à la grille dans le contrôle.

Control2:

public datatable Result{get;set;} 

Private void SetGrid() 
{ 
datagrid1.datasource=Result; 
datagrid1.databind(); 
} 

Control1:

Datatable dt=SearchResult(); 
Control2.Result=dt; 
0

Dans le deuxième utilisateur contrôle .ascx page vous pouvez référencer premier contrôle utilisateur comme en

<%@ Reference Control="first user control names comes here" %> 

En second utilisateur événement de chargement de page de contrôle, vous pouvez trouver l'objet du premier contrôle de l'utilisateur en utilisant belo w façons mentioed:

UserControls_UCFirst uc1 = (UserControls_UCFirst)this.Parent.FindControl("UCFirst1"); 

alors vous pouvez trouver des objets critères de recherche (TextBox, DropDownList, etc ..) de premier contrôle utilisateur.

TextBox txt = (TextBox)(uc1.FindControl("txtName")); 

Grâce au processus ci-dessus, vous pouvez lier la vue de grille.

Espérons que cela aidera.

0

Tout d'abord, obtenez les résultats recherchés dans un DataTable et stockez le DataTable dans un ViewState. Puis définissez le DataTable dans un ViewState en tant que source de données de GridView. Comme cela,

GridView1.DataSource = ViewState["DataTable1"]; 
GridView1.DataBind(); 

J'espère que cela vous aidera u.

Questions connexes