Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Aprire la riga selezionata
domenica 27 marzo 2011 - 17.57
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
|
.NET 3.5
|
.NET 4.0
|
Windows Server 2008 R2
|
Windows Server 2008
|
Windows 7
|
Visual Studio 2008
|
SQL Server 2008 R2
|
Office 2010
|
Internet explorer 8.0
gianni01
Profilo
| Newbie
32
messaggi | Data Invio:
dom 27 mar 2011 - 17:57
Salve a tutti, sono nuovo di questo sito e soprattutto nuovo nella programmazione, quindi non arrabbiatevi se pongo domande banali.
Ho questo problema, dovrei aprire la riga selezionata di una datagridview in una form, io ho implementato il codice per l'apertura della form in questo modo, ma non so come far apparire i dati della riga nella form.
Potete aiutarmi, grazie.
Questo è il codice attuale:
Private Sub dgvMacchinario_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvMacchinario.CellDoubleClick
If e.ColumnIndex = 3 Then
Dim SingIstForm As New frmMacchine
Dim dr As DataRow = DirectCast(TbMacchinarioBindingSource.Current, DataRowView).Row
SingIstForm = frmMacchine.Istanza
SingIstForm.MdiParent = Me.MdiParent
SingIstForm.Show()
AddHandler SingIstForm.FormClosed, AddressOf frmTerziaria_Closed
SingIstForm.Show()
frmpAvvio.btnMacchine.BackColor = Color.PaleGreen
End If
End Sub
ysdemarc
Profilo
| Expert
587
messaggi | Data Invio:
lun 28 mar 2011 - 18:22
Non ho capito bene la tua domanda, se vuoi passare il tuoo dataRow del datagridview alla form frmMacchine potresti implementare il costruttore e passarglielo al momento dell'instanzazione del form che farai dopo aver valorizzato il dataRow
Vincenzo
Programmatore sbilenco
gianni01
Profilo
| Newbie
32
messaggi | Data Invio:
mar 29 mar 2011 - 09:25
Ciao ysdemarc, innanzi tutto grazie per l'interessamento, cerco di spiegare meglio il problema, io ho strutturato il codice come di seguito allego, sembrerebbe funzionare tutto, non ho nessun tipo di errore, l'unico problema a questo punto non riesco a visualizzare i dati nella nuova form.
Ovvero, ho una fomr frmOfferte in cui faccio una query e ottengo un risultato in una gridview, a questo punto cliccando su un campo (nella fattispecie "Dimensioni"), mi apre una nuova form con tutti idettagli del prodotto rappresentati in tante textbox quante sono le colonne della tabella.
Il problema sta qui, nel senso che nella nuova form le texbox restno vuote.
Questo è il codice:
Form Offerte:
Private Sub btnRicerca_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRicerca.Click
Dim DS As New DataSet
Dim daMacchinario As New SqlClient.SqlDataAdapter
Dim Conn As SqlClient.SqlConnection
Conn = New SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings("DBConnection").ConnectionString)
Using cmd As New SqlClient.SqlCommand("SELECT * FROM tbMacchinario " & "WHERE Dimensioni LIKE @Dimensioni ", Conn)
cmd.Parameters.AddWithValue("@Dimensioni", txtDimensione.Text)
daMacchinario = New SqlClient.SqlDataAdapter(cmd)
daMacchinario.Fill(DS, "Risultati")
dgvMacchinario.DataSource = DS.Tables("Risultati") 'dgvMacchinario il DataGridView.
End Using
End Sub
Private Sub dgvMacchinario_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvMacchinario.CellDoubleClick
If e.ColumnIndex = 3 Then
Dim SingIstForm As New frmMacchine
Dim dr As DataRow = DirectCast(TbMacchinarioBindingSource.Current, DataRowView).Row
SingIstForm.myRow = CType(dr, Easy_SaleDataSet.tbMacchinarioRow)
SingIstForm = frmMacchine.Istanza
SingIstForm.MdiParent = Me.MdiParent
SingIstForm.Show()
AddHandler SingIstForm.FormClosed, AddressOf frmTerziaria_Closed
SingIstForm.Show()
frmpAvvio.btnMacchine.BackColor = Color.PaleGreen
End If
Form Macchinario:
Dim rw As Easy_SaleDataSet.tbMacchinarioRow = Nothing
Public WriteOnly Property myRow() As Easy_SaleDataSet.tbMacchinarioRow
Set(ByVal value As Easy_SaleDataSet.tbMacchinarioRow)
If Not value Is Nothing Then
IDTextBox.DataBindings.Clear()
rw = value
txtDimensioni.DataBindings.Add(New Binding("Text", rw, "Dimensioni"))
End If
End Set
End Property
Private Sub frmMacchine_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
Me.ValidateChildren()
If Not rw Is Nothing Then rw.EndEdit()
End Sub
Aspetto un vostro prezioso suggerimento, grazie ancora
eziopatane
Profilo
| Newbie
2
messaggi | Data Invio:
ven 5 ago 2011 - 22:09
Per non aprire un'altro Tread mi accodo alla richiesta..anche io devo fare la stessa identica cosa!
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !