Ready to get started?

Learn more about the CData ADO.NET Provider for xBase or download a free trial:

Download Now

Connect to xBase Data from PowerBuilder

This article demonstrates how to access xBase data from PowerBuilder using the CData ADO.NET Provider for xBase.

The CData ADO.NET providers are easy-to-use, standards-based controls that can be used from any platform or development technology that supports Microsoft .NET, including PowerBuilder. This article shows how to use the CData ADO.NET Provider for xBase in PowerBuilder.

This article shows how to create a basic PowerBuilder application that uses the CData ADO.NET Provider for xBase to retrieve data.

  1. In a new WPF Window Application solution, add all the Visual Controls needed for the connection properties. Below is a typical connection string:

    DataSource=MyDBFFilesFolder;

    The DataSource property must be set to the name of the folder that contains the .dbf files. Specify the IncludeFiles property to work with xBase table files having extensions that differ from .dbf. Specify multiple extensions in a comma-separated list.

  2. Add the DataGrid control from the .NET controls.
  3. Configure the columns of the DataGrid control. Below are several columns from the Account table: <DataGrid AutoGenerateColumns="False" Margin="13,249,12,14" Name="datagrid1" TabIndex="70" ItemsSource="{Binding}"> <DataGrid.Columns> <DataGridTextColumn x:Name="idColumn" Binding="{Binding Path=Id}" Header="Id" Width="SizeToHeader" /> <DataGridTextColumn x:Name="nameColumn" Binding="{Binding Path=Company}" Header="Company" Width="SizeToHeader" /> ... </DataGrid.Columns> </DataGrid>
  4. Add a reference to the CData ADO.NET Provider for xBase assembly.

Connect the DataGrid

Once the visual elements have been configured, you can use standard ADO.NET objects like Connection, Command, and DataAdapter to populate a DataTable with the results of an SQL query:

System.Data.CData.xBase.xBaseConnection conn conn = create System.Data.CData.xBase.xBaseConnection(connectionString) System.Data.CData.xBase.xBaseCommand comm comm = create System.Data.CData.xBase.xBaseCommand(command, conn) System.Data.DataTable table table = create System.Data.DataTable System.Data.CData.xBase.xBaseDataAdapter dataAdapter dataAdapter = create System.Data.CData.xBase.xBaseDataAdapter(comm) dataAdapter.Fill(table) datagrid1.ItemsSource=table.DefaultView

The code above can be used to bind data from the specified query to the DataGrid.