Solved

How do I tie a bindingnavigator control to a datagrid without using the designer

Posted on 2006-11-20
3
858 Views
Last Modified: 2012-08-14
Ok, I'm trying to make a .net application which is very simple. The idea is that it starts with some opening arguments which tell it:

  1. Which db to open (the path)
  2. What query to use to get data
  3. What table it is to read from

So, what this means is that I need to actually change all the datasources and everything programmatically at run time.

I'm actually very new to .net, altho I have programmed in vb for about 7 months. The reason I'm doing this in .net is because vb6 doesn't have some features which my boss wants in the program.

Anyways, I have no idea how to do this in .net, and I've been trying to figure it out all day. It's very easy in vb6, I just set the datasource property. The best I can determine is that in order to do this I need to use a bindingnavigator control and a datagrid control.

Does anyone know how to do this through code only?
0
Comment
Question by:JeffreyDurham
  • 2
3 Comments
 

Author Comment

by:JeffreyDurham
ID: 17988302
This is what I ended up doing, it seems to work. If anyone knows of any particular way I might do this better please let me know. Thanks!

    Private bindingSource1 As New BindingSource

    private sub bindGrid()        
        dodatagridinit()
        Dim dbAdapter = New OleDbDataAdapter()
        Dim dtResults = New DataTable("Results")
        dbAdapter.Fill(dtResults, mydb.myRecordSet)
        Me.bindingSource1.DataSource = dtResults
        Me.BindingNavigator1.BindingSource = bindingSource1
        Me.mydatagrid.DataSource = bindingSource1
        Me.mydatagrid.AutoResizeColumns()
        dbAdapter = Nothing
        dtResults = Nothing
    End Sub

    Private Sub dodatagridinit()
        Me.mydatagrid.DataSource = Nothing
        Me.mydatagrid.ColumnHeadersVisible = True
        Me.mydatagrid.AllowDrop = False
        'Me.mydatagrid.AllowSorting = True
        'Me.mydatagrid.CaptionText = "These Records Will Be Used To Print Your Mailing Labels"
        'Me.mydatagrid.PreferredColumnWidth = 100
        'Me.mydatagrid.PreferredRowHeight = 20
    End Sub
0
 

Author Comment

by:JeffreyDurham
ID: 18031655
This is what I ended up doing. It worked Great. So that's that.

Public Sub bindTable()
        dodatagridinit()

        'Dim con As New OleDbConnection(mydb.myDbVars.myConnectStr)
        Dim conn As New OleDbConnection(mydb.myDbVars.myConnectStr)
        Dim myquerystr$ = CStr(mydb.myDbVars.myQueryStr)
        'myConnection.ConnectionString = myquerystr
        dbAdapter = New OleDb.OleDbDataAdapter(myquerystr, conn)
        mycb = New OleDbCommandBuilder(dbAdapter)
        ''original''    Dim cb As New OleDbCommandBuilder(dbAdapter)

        dbAdapter.Fill(dtResults)
        myConnection = conn
        'Me.lblTotal.Text = "Total: " &

        myConnection.Open()
        Me.bindingSource1.DataSource = dtResults
        Me.BindingNavigator1.BindingSource = bindingSource1
        Me.mydatagrid.DataSource = bindingSource1
        Me.mydatagrid.AutoResizeColumns()
        hideInvisColumns()
    End Sub
0
 

Accepted Solution

by:
PashaMod earned 0 total points
ID: 18036190
Closed, 125 points refunded.
PashaMod
Community Support Moderator
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I’ve seen a number of people looking for examples of how to access web services from VB6.  I’ve been using a test harness I built in VB6 (using many resources I found online) that I use for small projects to work out how to communicate with web serv…
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now