PERMITIR ADICIONAR NOVA LINHA AO CLICAR NO GRID

TSANALISTA 22/03/2013 13:19:31
#420915
Pessoal primeiramente bom dia.
Gostaria se possível de uma ajuda em resolver este cenário. Eu tenho um DatagridFoneContato que seu datasource é populado pela minha lista genérica. Nele mostro somente 2 campos. Tipo Fone e Numero
Código:
Public Sub ListaGridContatoFoneGetID()

mContato = New InforPessoa_ContatoPhone()
Try
If String.IsNullOrEmpty(txtClienteID_Cli.Text) Then
mContato.Pessoa_ID = 0
Else
mContato.Pessoa_ID = CInt(txtClienteID_Cli.Text)
End If
FormatarGridFone()
bContatoBLL = New BLLPessoa_ContatoPhone()
[ô]Busca os registros
bContatoBLL.ListagemGetFone(mContato)

dgv_Fone.DataSource = bContatoBLL.Lista_Contatos [ô] Public ReadOnly Property Lista_Contatos() As List(Of InforPessoa_ContatoPhone)
[ô]SetBorderAndGridlineStyles()
[ô]End If
Catch ex As Exception
MessageBox.Show([Ô]Erro na Listagem[Ô] & ex.Message)
Finally
bContatoBLL = Nothing
End Try
End Sub


E aqui tenho um método que formata o datagrid, nele adicionei o campo [Ô]Tipo Fone[Ô] como combobox

Private Sub FormatarGridFone()

With dgv_Fone
.AutoGenerateColumns = False
.Columns.Clear()
.RowHeadersVisible = False
.AllowUserToAddRows = True
.AllowUserToDeleteRows = True

[ô]SELECT F.Pes_ContFone_Id,F.Pes_ContFone_TipoId, F.Pes_ContFone_PesId, T.Pes_TipCont_Desc AS [ô]Tipo Fone[ô], F.Pes_ContFone_Fone AS Numero
Dim colContID As New DataGridViewTextBoxColumn()
With colContID
.DataPropertyName = [Ô]Codigo[Ô]
.HeaderText = [Ô]Codigo[Ô]
.Width = 5 : .Frozen = False
.ReadOnly = True : .FillWeight = 100
.AutoSizeMode = DataGridViewAutoSizeColumnMode.NotSet
.MaxInputLength = 5
.Visible = False
End With

Dim colContTipoID As New DataGridViewTextBoxColumn()
With colContTipoID
.DataPropertyName = [Ô]Tipo_ContID[Ô]
.HeaderText = [Ô]Cont. TipoID[Ô]
.Width = 5 : .Frozen = False
.ReadOnly = True : .FillWeight = 100
.AutoSizeMode = DataGridViewAutoSizeColumnMode.NotSet
.MaxInputLength = 100
.Visible = False
End With

Dim colPesID As New DataGridViewTextBoxColumn()
With colPesID
.DataPropertyName = [Ô]Pessoa_ID[Ô]
.HeaderText = [Ô]Pessoa ID[Ô]
.Width = 5 : .Frozen = False
.ReadOnly = True : .FillWeight = 100
.AutoSizeMode = DataGridViewAutoSizeColumnMode.NotSet
.MaxInputLength = 100
.Visible = False
End With

Dim colNomeTipoFone As New DataGridViewComboBoxColumn()
bcontatoTipo = New BLLPessoa_ContatoTipo()
With colNomeTipoFone
.DataSource = bcontatoTipo.Listagem()
.DisplayMember = [Ô]Pes_TipCont_Desc[Ô]
.ValueMember = [Ô]Pes_TipCont_Id[Ô]
.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.DataPropertyName = [Ô]Desc_Fone[Ô]
.HeaderText = [Ô]Tipo Fone[Ô]
.Width = 90 : .Frozen = False
.FillWeight = 100 : .ReadOnly = False
.AutoSizeMode = DataGridViewAutoSizeColumnMode.NotSet
.Visible = True
End With

Dim colTelefone As New DataGridViewTextBoxColumn()
With colTelefone
.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
.DataPropertyName = [Ô]Pes_ContFone_Fone[Ô]
.HeaderText = [Ô]Numero[Ô]
.Width = 90 : .Frozen = False
.ReadOnly = False : .FillWeight = 100
.AutoSizeMode = DataGridViewAutoSizeColumnMode.NotSet
.MaxInputLength = 10
.Visible = True
End With

.Columns.Add(colContID)
.Columns.Add(colContTipoID)
.Columns.Add(colPesID)
.Columns.Add(colNomeTipoFone)
.Columns.Add(colTelefone)

.DataSource = Nothing
.Refresh()

End With
End Sub


O meu problema é quando eu clico em alguma célula do Grid ele não me mostrar a nova linha para eu adicionar um novo registro.
Vejam que no método que formata o Grid eu já configurei para ele permitir adicionar nova linha, mas não mostra:
.AllowUserToAddRows = True
.AllowUserToDeleteRows = True

Até mesmo nas propriedades do Grid interno eu deixei [Ô] True [Ô] também e mesmo não não mostra..vejam a imagem abaixo.
Quando eu faço a consulta retornando um datatable utilizando as configurações padrões do datagrid é mostrado a nova linda ao clicar na célula, mas não consigo transformar a quela coluna inteira como combobox.

Responder Citação Exclu
TSANALISTA 22/03/2013 13:31:53
#420916
Aqui o projeto como fica não inserie a nova linha quando eu clico na célula

Código fonte do arquivo:
https://docs.google.com/file/d/0BwoCzDQ2EvFBX2R6ZEZGcDQ4cTg/edit?usp=sharing
Tópico encerrado , respostas não são mais permitidas