WinForm - DataGridTextBox - Erro de navegação

29/12/2005

0

Quem tiver o projeto TimeSheet publicado na revista MSDN Magazine - Vol 1 -
5a. Edição, poderá testar esse problema.

Basicamente, imagine dois ou três DataGrids em um form.
Um dataset é carregado com dados de várias tabelas relacionadas 1-N.
Para um dos GRIDs, SetDataBinding é carregado com o DataSource = dataset e
DataMember = ´TabelaMestre´.
Os outros grids são carregados cada um com um relacionamento 1-N da tabela
mestre e o mesmo dataset como DataSource. Exemplo do DataMember de um grid
filho: ´TabelaMestre.Relacionamento1Filho´.

O resultado, vocês já entenderam. Quando selecionamos uma linha no GRID
Mestre, automaticamente os GRIDS vinculados são atualizados com os registros
relacionados (1-N).

As colunas, nos três grids, foram otimizadas com TableStyles e
GridColumnStyles.

-> O ERRO < -

1) Nas DataGridTextBoxColumn de um dos GRIDs filhos marque a proprieade
ReadOnly como = True (não queremos que o usuário altere o conteúdo da célula,
pois poderia ser um ID daquele registro).
2) Execute a aplicação, que irá carregar o dataset e atribuir DataBinding
aos GRIDS. O primeiro registro do GRID Master é posicionado e os outros dois
GRIDS exibirão os registros relacionados com a row ativa do mestre.
3) Posicione o mouse sobre uma das colunas ReadOnly de um dos GRIDs filho...
4) Agora, no GRID mestre, mude a row selecionada.
5) Observe que o TextBox que está embutido no DataGridTextBoxColumn daquela
célula selecionada no Grid filho não foi atualizado. Inclusive, se nesse novo
relacionamento não existir a linha correspondente, o textbox ´fastasma´
permanece na tela. Quando você clicar sobre o GRID, o textbox some....

Alguém já passou por isso ?


Licitec

Licitec

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar