Dans Delphi.net, VCL.net a deux regrets:
1. ADO (DBGO) ne peut pas être utilisé, mais selon Li Wei, Delphi8.1 de ce mois aura ce composant.
2. Vous ne pouvez pas utiliser ADO.NET et BDP, ce sera le sujet de mon article.
Dans la zone de communication Delphi de Borland, Danny a déclaré: "Dans Delphi.net, VCL.NET peut appeler WinForm Components, et WinForm peut également appeler les composants VCL.NET."
Afin de vérifier la première phrase, je l'ai essayé. En d'autres termes, bien que le composant .NET ne puisse pas être vu dans le panneau de composant VCL.NET, toutes les classes de composants .NET, VCL.NET, peuvent être utilisées! Cependant, l'ensemble de données d'ADO.NET n'est pas compatible avec le composant de jeu de données de VCL.NET, de sorte que le composant de rendez-vous de données ne peut pas être appelé directement. Cependant, après avoir examiné le VCL intérieur de Li Wei, j'ai découvert qu'il y avait un composant AdonetConnector.
Tout d'abord, la DLL du composant vcl.net a un borland.vcl.design.adonet.dll sous BDS / 2.0 / bin. formulaire. Vous pouvez voir le composant AdonetConnector. Ajoutez ensuite un dbgrid, db ..., dataSource ..., tant que dataSource.dataset: = adonetConnector1. Les autres sont les mêmes que le Delphi d'origine, faites-le. Mon code spécifique est le suivant
unité unité 1;
interface
usages
Windows, messages, systèmes, variantes, classes, graphiques, contrôles, formulaires,
Dialogues,
System.Data.SqlClient,
System.Data, System.ComponentModel, borland.vcl.stdctrls,
Borland.vcl.extctrls, borland.vcl.dbctrls, borland.vcl.grids,
Borland.vcl.dbgrids, borland.vcl.db, borland.vcl.adonetdb;
taper
Tform1 = classe (tform)
Button1: Tbutton;
ADONETConnector1: TadonetConnector;
DataSource1: tdataSource;
Dbgrid1: tdbgrid;
Dbnavigator1: tdbnavigator;
Procédure Button1Click (expéditeur: tobject);
Privé
{Déclarations privées}
Connexion: SQLConnection;
Prodataset: ensemble de données;
Adaptateur: sqlDataAdapter;
publique
{Déclarations publiques}
fin;
var
FORM1: TFORM1;
Mise en œuvre
{$ R * .nfm}
Procédure tform1.button1Click (expéditeur: tobject);
Commencer
Connexion: = sqlconnection.create (
'Source de données = 192.168.76.170;' +
'catalogue initial = sfiecerp;' +
'password = qwert;' +
'persistant la sécurité info = true;' +
'utilisateur id = sa;' +
'taille de paquet = 4096;' +
'Lifetime de connexion = 0;' +
'Connexion réinitialisation = false;' +
'PACLING = FALSE;' +
'Max Pool Taille = 100; Min Pool Size = 0');
Connection.open;
Prodataset: = dataSet.Create;
Adaptateur: = sqldataadapter.create ('select * from tproduct', connexion);
Adapter.fill (prodataset, «produit»);
ADONETConnector1.Datatable: = prodataSet.tables [0];
fin;
fin.
Dans Delphi.net, VCL.net a deux regrets:
1. ADO (DBGO) ne peut pas être utilisé, mais selon Li Wei, Delphi8.1 de ce mois aura ce composant.
2. Vous ne pouvez pas utiliser ADO.NET et BDP, ce sera le sujet de mon article.
Dans la zone de communication Delphi de Borland, Danny a déclaré: "Dans Delphi.net, VCL.NET peut appeler WinForm Components, et WinForm peut également appeler les composants VCL.NET."
Afin de vérifier la première phrase, je l'ai essayé. En d'autres termes, bien que le composant .NET ne puisse pas être vu dans le panneau de composant VCL.NET, toutes les classes de composants .NET, VCL.NET, peuvent être utilisées! Cependant, l'ensemble de données d'ADO.NET n'est pas compatible avec le composant de jeu de données de VCL.NET, de sorte que le composant de rendez-vous de données ne peut pas être appelé directement. Cependant, après avoir examiné le VCL intérieur de Li Wei, j'ai découvert qu'il y avait un composant AdonetConnector.
Tout d'abord, la DLL du composant VCL.NET a un borland.vcl.design.adonet.dll sous BDS / 2.0 / bin. formulaire. Vous pouvez voir le composant AdonetConnector. Ajoutez ensuite un dbgrid, db ..., dataSource ..., tant que dataSource.dataset: = adonetConnector1. Les autres sont les mêmes que le Delphi d'origine, faites-le. Mon code spécifique est le suivant
unité unité 1;
interface
usages
Windows, messages, systèmes, variantes, classes, graphiques, contrôles, formulaires,
Dialogues,
System.Data.SqlClient,
System.Data, System.ComponentModel, borland.vcl.stdctrls,
Borland.vcl.extctrls, borland.vcl.dbctrls, borland.vcl.grids,
Borland.vcl.dbgrids, borland.vcl.db, borland.vcl.adonetdb;
taper
Tform1 = classe (tform)
Button1: Tbutton;
ADONETConnector1: TadonetConnector;
DataSource1: tdataSource;
Dbgrid1: tdbgrid;
Dbnavigator1: tdbnavigator;
Procédure Button1Click (expéditeur: tobject);
Privé
{Déclarations privées}
Connexion: SQLConnection;
Prodataset: ensemble de données;
Adaptateur: sqlDataAdapter;
publique
{Déclarations publiques}
fin;
var
FORM1: TFORM1;
Mise en œuvre
{$ R * .nfm}
Procédure tform1.button1Click (expéditeur: tobject);
Commencer
Connexion: = sqlconnection.create (
'Source de données = 192.168.76.170;' +
'catalogue initial = sfiecerp;' +
'password = qwert;' +
'persistant la sécurité info = true;' +
'utilisateur id = sa;' +
'taille de paquet = 4096;' +
'Lifetime de connexion = 0;' +
'Connexion réinitialisation = false;' +
'PACLING = FALSE;' +
'Max Pool Taille = 100; Min Pool Size = 0');
Connection.open;
Prodataset: = dataSet.Create;
Adaptateur: = sqldataadapter.create ('select * from tproduct', connexion);
Adapter.fill (prodataset, «produit»);
ADONETConnector1.Datatable: = prodataSet.tables [0];
fin;
fin.