[AccessD] OT Visual basic Express 2012 - ComboBox

Charlotte Foust charlotte.foust at gmail.com
Thu Feb 12 12:34:55 CST 2015


My VB.Net is rusty, but the way you're setting the selected value should be
fine.  I'm just not clear on why you need to set a combobox value as
selected.  Is it to show the  user that they're on the right record?

In any case, updating the SQL table is a separate step from updating the
data table you've built.  You generally use an SP that adds a record to the
SQL table for that or updates one, because that's all you're doing,
appending or updating a record in the back end.  As to updating the data
table, you've bound the controls to it, so you should be able to just
update it, assuming it's a virtual table, and keep working with it.

Charlotte

On Thu, Feb 12, 2015 at 7:41 AM, Paul Hartland <paul.hartland at googlemail.com
> wrote:

> Not quite, the combo box works perfect drops down the whole selection list,
> if I select one I can show the ValueMember and DisplayMember and if I hard
> code something like
>
>  Me.cmbRequestCodes.SelectedValue = 4 then the combo box displays the
> correct text 'Incorrect Description'
>
> I have a data table called 'tblPIPRequests' built as below:
>
> cmdPIPRequests.Connection = pADOPIPConn
> cmdPIPRequests.CommandText = "phPIP_SelectSingleRequest"
> cmdPIPRequests.CommandType = CommandType.StoredProcedure
>
> cmdPIPRequests.Parameters.AddWithValue("intRequestID", pLngPIPRequestID)
>
> dapPIPRequests.SelectCommand = cmdPIPRequests
>
> ' Create an instance of a DataSet, and retrieve data from the Requests
> table.
> dapPIPRequests.FillSchema(datPIPRequests, SchemaType.Source, "PIPRequests")
> dapPIPRequests.Fill(datPIPRequests, "PIPRequests")
>
> tblPIPRequests = datPIPRequests.Tables("PIPRequests")
>
> drCurrent = tblPIPRequests.Rows.Find(pLngPIPRequestID)
>
> Now one of the fields that the data table brings back is RequestCode and I
> need to assign this to the combo box to show the DisplayMember of the
> corresponding RequestCode.  I have tried
>
> Me.cmbRequestCodes.SelectedValue = drCurrent!RequestCode
>
> Which works, but not sure if this is the correct way to do all this, as I
> say I am only just learning VB.net/Express.
>
> Any help on this is greatly appreciated.
>
> Also as you can see from the code where I create the data table
> 'tblPIPRequests' I use a stored procedure to bring back the results, the
> form will allow the user to edit one or two of the fields via bound text
> boxes, being bound like below:
>
> Me.txtResolvedBy.DataBindings.Add("Text", tblPIPRequests, "ResolvedByName")
>
> What I haven't been able to figure out is, once the user clicks the save
> button on the form, how to update the data table 'tblPIPRequests' and the
> SQL Datasource.  Do I have to change from using a stored procedure to a
> basic select statment for the table ? (as I read somewhere that UPDATE,
> INSERT & DELETE's would automatically be created !!!!!)
>
> Thanks again in advance for any help on this.
>
> Paul
>
>
> On 12 February 2015 at 14:28, Bill Benson <bensonforums at gmail.com> wrote:
>
> > Paul, why not just set the bound columnwidths property such that the
> column
> > you want has a width of 0? That is what I normally do if I take your
> > meaning.
> >
> > On Thu, Feb 12, 2015 at 3:01 AM, Paul Hartland <
> > paul.hartland at googlemail.com
> > > wrote:
> >
> > > To all,
> > >
> > > I have only really developed in MS Access and Visual Basic 6.0....I am
> > on a
> > > learning curve at work where we have Visual Studio Express 2012
> installed
> > > on my machine. I have the following code to populate a combobox :
> > >
> > > Dim adtRequestCodes As New SqlDataAdapter()
> > > Dim dsRequestCodes As New DataSet()
> > > Try
> > >             Dim cmdPIPRequestCodes As New SqlCommand()
> > >             cmdPIPRequestCodes.Connection = pADOPIPConn
> > >             cmdPIPRequestCodes.CommandText = "phPIP_RequestCodes"
> > >             cmdPIPRequestCodes.CommandType =
> CommandType.StoredProcedure
> > >             adtRequestCodes.SelectCommand = cmdPIPRequestCodes
> > >             adtRequestCodes.Fill(dsRequestCodes)
> > >             adtRequestCodes.Dispose()
> > >             cmdPIPRequestCodes.Dispose()
> > >             Me.cmbRequestCodes.DataSource = dsRequestCodes.Tables(0)
> > >             Me.cmbRequestCodes.ValueMember = "ReasonID"
> > >             Me.cmbRequestCodes.DisplayMember = "ReasonCode"
> > > Catch ex As Exception
> > >             MsgBox(ex.Message)
> > > End Try
> > >
> > > This works as it populates the ComboBox.  However I have datatable
> called
> > > tblPIPRequests which I use to populate textboxes with data using
> > something
> > > like '
> > >
> > > Me.txtResolvedBy.DataBindings.Add("Text", tblPIPRequests,
> > "ResolvedByName")
> > > '.  But can't figure out how to have the combobox show the value of
> > > RequestCode from the datatable
> > >
> > > I.e. in the datatable 'tblPIPRequests' say the 'RequestCode' is 4 I
> need
> > > the combobox to show the 'ReasonCode' associated with RequestCode 4
> which
> > > would be 'Incorrect Desription'
> > >
> > >
> > > It may even be that I have set this all up wrong for what I need, I
> have
> > > been googling here and there just to get where I am now.
> > >
> > > Any help GREATLY appreciated.
> > >
> > > --
> > > Paul Hartland
> > > paul.hartland at googlemail.com
> > > --
> > > AccessD mailing list
> > > AccessD at databaseadvisors.com
> > > http://databaseadvisors.com/mailman/listinfo/accessd
> > > Website: http://www.databaseadvisors.com
> > >
> > --
> > AccessD mailing list
> > AccessD at databaseadvisors.com
> > http://databaseadvisors.com/mailman/listinfo/accessd
> > Website: http://www.databaseadvisors.com
> >
>
>
>
> --
> Paul Hartland
> paul.hartland at googlemail.com
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> http://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
>


More information about the AccessD mailing list