52 messaggi dal 13 marzo 2002
Ciao a tutti,

Ho un'applicazione che effettua delle query su Active Directory.
Per la visualizzazione dei record ho la necessità di creare un Gridview dinamico e la cosa funziona bene.
Nel gridview ho messo anche un pulsante. Quello che non funziona è che non accade nulla quando clicco sul pulsante o meglio non viene scatenato l'evento GVModUsers_RowCommand.

Ecco il codice:

GridView GVModUsers = new GridView();

GVModUsers.ID = "GVModUsers";
GVModUsers.DataKeyNames = new String[] {"UserID"};
GVModUsers.AutoGenerateColumns = false;
GVModUsers.DataSource = DTFilter(txtUserid.Text, GruppoMAGW);
GVModUsers.BorderColor = Color.SeaGreen;
GVModUsers.BackColor = Color.White;
GVModUsers.BorderStyle = BorderStyle.Double;
GVModUsers.GridLines = GridLines.Horizontal;
GVModUsers.BorderWidth = new Unit("3px");
GVModUsers.CellPadding = 4;

GVModUsers.HeaderStyle.BackColor = Color.SeaGreen;
GVModUsers.HeaderStyle.ForeColor = Color.White;
GVModUsers.HeaderStyle.Font.Bold = true;

BoundField objCol1 = new BoundField();
objCol1.Visible = true;
objCol1.DataField = "UserID";
objCol1.HeaderText = "UserID";
GVModUsers.Columns.Add(objCol1);

BoundField objCol2 = new BoundField();
objCol2.Visible = true;
objCol2.DataField = "Cognome";
objCol2.HeaderText = "Cognome";
GVModUsers.Columns.Add(objCol2);

BoundField objCol3 = new BoundField();
objCol3.Visible = true;
objCol3.DataField = "Nome";
objCol3.HeaderText = "Nome";
GVModUsers.Columns.Add(objCol3);

BoundField objCol4 = new BoundField();
objCol4.Visible = true;
objCol4.DataField = "Società";
objCol4.HeaderText = "Società";
GVModUsers.Columns.Add(objCol4);

BoundField objCol5 = new BoundField();
objCol5.Visible = true;
objCol5.DataField = "Gruppo";
objCol5.HeaderText = "Gruppo";
GVModUsers.Columns.Add(objCol5);

BoundField objCol6 = new BoundField();
objCol6.Visible = false;
objCol6.DataField = "IDGruppo";
objCol6.HeaderText = "IDGruppo";
GVModUsers.Columns.Add(objCol6);

BoundField objCol7 = new BoundField();
objCol7.Visible = false;
objCol7.DataField = "IDSocieta";
objCol7.HeaderText = "IDSocieta";
GVModUsers.Columns.Add(objCol7);

ButtonField objCol8 = new ButtonField();
objCol8.Visible = true;
objCol8.CommandName = "NewRich";
objCol8.Text = "Richiedi";
objCol8.ButtonType = ButtonType.Button;
GVModUsers.Columns.Add(objCol8);

GVModUsers.RowCommand += new GridViewCommandEventHandler(GVModUsers_RowCommand);

GVModUsers.DataBind();
Page.Form.Controls.Add(GVModUsers);



protected void GVModUsers_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName.Equals("NewRich"))
{
int index = Convert.ToInt32(e.CommandArgument);
........
}
}

Avete qualche idea?

Ciao
Umberto
Modificato da umbtaf il 24 aprile 2007 11.20 -
ricrei il GridView ad ogni PostBack?

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
52 messaggi dal 13 marzo 2002
No, viene creato dopo che l'utente ha riempito una Textbox con la Userid e ha cliccato su un pulsante.

Ciao
Umberto
il problema è tutto li, devi ricreare ad ogni Postback il GridView, quello che viene fatto in modo automatico dal asp.net con i controlli dichiarati nella pagina.

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
52 messaggi dal 13 marzo 2002
Ho spostato la creazione del Gridview sul Page_Load, mentre il Databind l'ho lasciato dov'era ed ora funziona.

Grazie mille
Umberto
di niente

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.