INSERIR CABECALHO E DADOS NUM DATAGRIDVIEW

EDUARDONICE 03/02/2014 20:21:24
#434162
Olá pessoal

Tenho pouca experiência em VB.Net e estou com o seguinte problema:

Tenho um form com:
Quatro textbox (Item, Produto, Quantidade e Preço)
Um datagridview
Dois botões (Inserir e Retirar)

O que quero fazer é:
1- Como inserir um cabeçalho no datagridview
2- Ao acionar o botão Inserir, quero trazer os dados que estão nos textbox para o datagridview
3- Ao acionar o botão Retirar, quero deletar os dados da linha que está selecionada do datagridview

Alguém poderia me ajudar?

NILSONTRES 03/02/2014 21:06:50
#434163
Resposta escolhida
Clique no grid e em editar colunas, insira as colunas.
DEPOIS,
grid.rows.add
grid.rows(numerodalinha).cells(numerodacelula).value=text1.text
grid.rows.removeat numerodalinhaaremover
ROBIU 03/02/2014 21:19:58
#434165
E o banco de Dados? Seja mais preciso para ter soluções mais rápidas. Posta o seu projeto ou código.

Segue alguns links:
Trabalhando com datagridview
Estude o código que postei neste tópico

EDUARDONICE 04/02/2014 17:45:14
#434251
Bom, agradeço a ambos mas ainda ficou uma dúvida.

Baseado no que o Robiu postou, modifiquei o meu form para poder conhecer um pouco mais do datagrid. Sendo assim, meu form ficou da seguinte maneira:
- Criei duas tabelas no Access: Ped (Pedidos) e PedItem (Itens do Pedido)
- Cinco textbox (txtPedido, txtItem, txtProduto, txtQuantidade, txtPreco)
- Um Datagridview para conter os itens do pedido (Item, Produto, Quantidade e Preco)
- Três botões: btoAdicionar (para Adicionar dados no Grid), btoRetirar (para Retirar itens do Grid) btoGravar (para Atualizar a tabela)

O funcionamento é simples:
1 - Digitar o número do pedido
1.1 - Se existir exibir os dados no grid (Está fazendo)
1.2 - Se não existir o pedido exibir o cabeçalho no grid (Está fazendo)

2- Ao acionar o botão Adicionar, os dados dos textbox (txtItem, txtProduto, txtQuantidade e txtPreco) devem ser inseridos no datagridview (Não estou conseguindo fazer porque está dando o erro: [Ô]Rows cannot be programmatically added to the DataGridView[ô]s rows collection when the control is data-bound.[Ô])

3- Ao acionar o botão Retirar, os dados do grid devem ser excluídos (Está fazendo)

4- Ao acionar o botão gravar, vou ler o grid e gravar as informações na tabela (ainda não fiz, mas não vejo muitos problemas aqui)

Resumindo, meu problema é que não consigo inserir os dados que estão nos textbox no grid.

Seguem abaixo, o trecho quando digito o número do pedido e recupero os dados e quando aciono o botão Adicionar

Private Sub txtPedido_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtPedido.Leave
Dim Sql As String
With dgvProdutos
.ForeColor = Color.Black
.MultiSelect = False
.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
.DefaultCellStyle.SelectionBackColor = Color.LightYellow
.DefaultCellStyle.SelectionForeColor = Color.Black
.ColumnHeadersDefaultCellStyle.Font = New Font([Ô]Dejavu Sans Mono[Ô], 8, FontStyle.Regular)
.DefaultCellStyle.Font = New Font([Ô]Dejavu Sans Mono[Ô], 8, FontStyle.Bold)
End With
dgvProdutos.Columns.Clear()
conn.ConnectionString = cnxGTE
Sql = [Ô]Select IDITEM as ITEM, PRODIT as PRODUTO, QUANTIT as QUANTIDADE, PRECOIT as PREÇO from PedItem where IDPIT = [Ô] & txtPedido.Text & [Ô];[Ô]
cmd.CommandText = Sql
Dim Adapter As New OleDbDataAdapter(Sql, cnxGTE)
Dim dt As New DataTable([Ô]PEDITEM[Ô])
Adapter.Fill(dt)
dgvProdutos.DataSource = dt
AbrirBco()
Dim Vetor As OleDbDataReader = cmd.ExecuteReader()
Vetor.Close()
FecharBco()
End Sub

Private Sub btoAdicionar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btoAdicionar.Click
Dim Linha As Integer
Linha = dgvProdutos.Rows.Count
dgvProdutos.Rows.Insert(Linha)
dgvProdutos.Rows(Linha).Cells(0).Value = txtItem.Text
dgvProdutos.Rows(Linha).Cells(1).Value = txtProduto.Text
dgvProdutos.Rows(Linha).Cells(2).Value = txtQuantidade.Text
dgvProdutos.Rows(Linha).Cells(3).Value = txtPreco.Text
End Sub

Tópico encerrado , respostas não são mais permitidas