Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    dropdownlist in un datagrid dinamico

    Ciao a tutti, ho bisogno del vostro aiuto sto costruendo un datagrid (dg_gestori) in maniera dinamica, ossia creando le varie colonne da codice. Per farlo ho creato la seguente funzione (bindgrid).

    codice:
    public void BindGrid()
    //CARICA IL DATAGRID GESTORI
    {
    	SqlCommand cmd_com = new SqlCommand();
    	cmd_com.CommandText="SELECT id_gestore, g_ragSociale, g_comune, g_indirizzo, g_tel, g_fax, g_cellulare, g_email, g_web FROM GESTORI ORDER BY g_ragSociale";
    	cmd_com.Connection = this.connetti();
    	//carico il Datagrid con i gestori
    	DG_gestori.DataSource=cmd_com.ExecuteReader();
    
    	//costruisco le colonne del Datagrid
    	BoundColumn id_gestore = new BoundColumn();
    	id_gestore.DataField = "id_gestore";
    	id_gestore.HeaderText = "ID";
    	id_gestore.ReadOnly=true;
    	DG_gestori.Columns.Add(id_gestore);
    
    	BoundColumn g_ragSociale = new BoundColumn();
    	g_ragSociale.DataField = "g_ragSociale";
    	g_ragSociale.HeaderText = "Ragione sociale";
    	DG_gestori.Columns.Add(g_ragSociale);
    	
    	BoundColumn g_comune = new BoundColumn();
    	g_comune.DataField = "g_comune";
    	g_comune.HeaderText = "Comune";
    	DG_gestori.Columns.Add(g_comune);
    	
    	BoundColumn g_indirizzo = new BoundColumn();
    	g_indirizzo.DataField = "g_indirizzo";
    	g_indirizzo.HeaderText = "Indirizzo";
    	DG_gestori.Columns.Add(g_indirizzo);
    
    	BoundColumn g_tel = new BoundColumn();
    	g_tel.DataField = "g_tel";
    	g_tel.HeaderText = "Telefono";
    	DG_gestori.Columns.Add(g_tel);
    
    	BoundColumn g_fax = new BoundColumn();
    	g_fax.DataField = "g_fax";
    	g_fax.HeaderText = "Fax";
    	DG_gestori.Columns.Add(g_fax);
    
    	BoundColumn g_cellulare = new BoundColumn();
    	g_cellulare.DataField = "g_cellulare";
    	g_cellulare.HeaderText = "Cellulare";
    	DG_gestori.Columns.Add(g_cellulare);
    
    	BoundColumn g_email = new BoundColumn();
    	g_email.DataField = "g_email";
    	g_email.HeaderText = "E-Mail";
    	DG_gestori.Columns.Add(g_email);
    	
    	HyperLinkColumn g_web = new HyperLinkColumn();
    	g_web.DataTextField = "g_web";
    	g_web.DataNavigateUrlField="g_web";
    	g_web.Target="_blank";
    	g_web.HeaderText = "Sito Web";
    	DG_gestori.Columns.Add(g_web);
    	
    	DG_gestori.DataKeyField="id_gestore";
    	DG_gestori.DataBind();
    	DG_gestori.Visible=true;
    }

    Come vedete si tratta di una serie di boundcolumn che vengono aggiunte al datagrid.
    Il problema e che per la colonna "comune" avrei bisogno, nel momento in cui vado in modalità modifica, di una dropdownlist (con tutti i comuni) piuttosto che di una textbox (che appare di default).

    Ho provato a creare una
    codice:
    TemplateColumn g_comune = new TemplateColumn();
    ma non so poi come gestire (con il codice) i 2 valori possibili per questa colonna ossia
    codice:
    ItemTemplate
    ed
    codice:
    EditItemTemplate
    .

    Sono piuttosto disperato, qualcuno può aiutarmi???

  2. #2
    Nessuno sa aiutarmi....

  3. #3

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    ma cosa ti impedisce di farlo con i controlli classici ?

  5. #5
    e che all'interno del datagrid devo mostrare alcuni campi, oppure altri, a seconda dell'utente che accede alla pagina.

    Di conseguenze grazie al codice riesco a gestire in tutto e per tutto la generazione del datagrid!!!

  6. #6
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Non e' piu' semplice se accedi ai controlli con FindControl e li setti a visibile o invisibile secondo l'utente ?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.