66 messaggi dal 01 maggio 2001
Salve,
richiedo un po' di aiuto su alcuni "dubbi" trovati nella creazione di un datagrid e sulla connessione.


1-
Eseguire
myCommand.Connection.Open()
myCommand.ExecuteNonQuery()
myCommand.Connection.Close()

è sinonimo di (conn = stringa di connessione) :
Conn.Open()
myCommand.ExecuteNonQuery()
Conn.Close()

!?
In questo caso ripetere più volte l'esecuzione di "comandi" non è dannoso in quanto vengono aperte e chiuse un numero di connessioni alto anzichè aprirla all'inizio e chiuderla alla fine.

2-
Esiste una SUB che si avvia alla fine delle altre sub, ovvero contrapposta a Sub Page_Load che è la prima che si avvia ?

3-
Come si recupera il valore di un campo dalla datagrid ?
Qua ho scopiazzato un po' alla buona dopo esermi esasperato :

Dim CurrentTextBox As System.Web.UI.WebControls.TextBox
CurrentTextBox = E.Item.Cells(3).Controls(0)
Dim Valore1 As String = CurrentTextBox.Text
Dim CurrentTextBox2 As System.Web.UI.WebControls.TextBox
CurrentTextBox2 = E.Item.Cells(4).Controls(0)
Dim Valore2 As String = CurrentTextBox2.Text

SQL = "UPDATE downloads SET titolo = '" & Valore1 & "', percorso = '" & Valore2 & "' WHERE ID = " & MyDataGrid.DataKeys(E.Item.ItemIndex)


Ma non vi è un modo diretto per fare ad esempio

SQL = "UPDATE downloads SET titolo = '" & E.Item.Cells(3).Text & "' WHERE ID = " & MyDataGrid.DataKeys(E.Item.ItemIndex)


Insomma, brevemente come recupero il valore di una cella?
Inoltre, vi e' modo di conteggiare il numero di celle presenti ? (partono da 0 vero?)

4-
Il dataset è alla fin fine un array?

myCommand.Fill(myDataset, "downloads")

ricorda molto

myArray = RecordSet.GetRows

5-
A quale gruppo fanno parte : E.Item.Cells ? A quale namespace fanno riferimento ?

6-
Per disabilitare la possibilità SOLO ad alcuni campi di non riavere il valore immesso precedente dopo l'invio dei dati cosa devo fare?


Ringrazio anticipatamente per qualsiasi risposta
Ciao
- Atari

// Forza Reggina :)
238 messaggi dal 29 giugno 2003
Allora:
1) sì è uguale; per cui fai una apertura alla conn, poi fai tutto e poi chiudi. Al limite usa le transazioni.

2) Page_unload è la routine opposta a page load

3) usa findcontrol; esempio

dim descrizione as string= Ctype(e.Item.FindControl("Txtdescrizione"), TextBox).Text

di becca il valore di testo contenuto in una colonna modello (template) in cui hai messo una textbox chiamata "TxtDescrizione"

4) alla fin fin fine, è un array, ma ha molte potenzialità in più: io lo paragonerei ad un database tipo access in cui puoi mettere delle tabelle, inserire colonne autoincrementanti, relazioni....

5) fanno riferimento al data grid, cioè imports System.web.ui.webcontrols (credo)

6) usi una template column in cui metti dei controlli con EnableViewState impostato a false


Non è esauriente, ma almeno come inizio, ciao

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.