Trabalhando com o DBGrid no modo Desvinculado. 


Já pensou em trabalhar com o DBgrid sem usar um controle de dados ? Bem , ao tentar fazer isto você estará trabalhando com o controle no modo desvinculado.

Por que você iria fazer isto ? Ora , para ter um maior controle sobre como as informações são tratadas e exibidas na grade e quiser melhorar o  desempenho. Para isto o DBGrid oferece várias propriedades e eventos que serão usadas no modo desvinculado.

A primeira coisa a fazer é definir a propriedade DataMode do controle para 1-dbgUnboud ,  isto fará com que o seu código assuma completa responsabilidade pelo gerenciamento da informação da grade.

Trabalhando neste modo o seu código para tratamento dos dados deverá ser escrito em resposta a quatro eventos:

  1. UnboundAddData - Iniciado quando a grade vai incluir uma linha á fonte de dados
  2. UnboundDeleteRow - Disparado quando a grade vai excluir uma linha da fonte de dados
  3. UnboundWriteData - Acionado quando a grade precisa gravar os dados de volta na fonte de dados
  4. UnboundReadData - Iniciado quando a grade vai recuperar uma linha de dados na fonte de dados

Além destes você vai precisar escrever código para todos os eventos , interagindo com o objeto RowBuffer , transmitido para o seu sistema a partir da grade. 

Obs: Na versão 6.0 o VB trouxe o controle vinculado DataGrid cuja funcionalidade é idêntica a do DBGrid , com uma pequena diferença : o DataGrid não suporta o modo desvinculado.

Você pode obter a documentação on-line sobre o DBGrid no site da APEX  - http://www.apexsc.com. (Esta é a documentação que vem com o VB.)

Sem querer desanimar , se você escolheu este modo , prepare-se para codificar e codificar...

Veja outro artigo no site a respeito em :

VB - Usando DBGrid no modo não vinculado (Unbound mode)

Ou então você pode fazer o download de um exemplo do site da microsoft em : http://support.microsoft.com/support/kb/articles/Q140/0/21.asp 

Até mais...


José Carlos Macoratti