Solved

Previous SelectedIndex

Posted on 2004-08-25
11
272 Views
Last Modified: 2008-02-01
Hi,

I have an event set to run on SelectedIndexChange.  Is there a way to find out the last index value?  For example if the current index value is 2 and the users selects 5.  Is there a way to return that first value, 2 in this case?

I suppose I could put hidden fields on my form, but I was wondering if there was an easier way.

Ryan
0
Comment
Question by:RySk8er30
  • 5
  • 5
11 Comments
 
LVL 37

Expert Comment

by:gregoryyoung
ID: 11893629
nope you would need to maintain it yourself ... I would recommend subclassing the control to add the behavior though ..
0
 

Author Comment

by:RySk8er30
ID: 11893667
How would I do that?
0
 
LVL 37

Expert Comment

by:gregoryyoung
ID: 11893702
inherit from the original control and override some of the functionality.
0
 
LVL 37

Expert Comment

by:gregoryyoung
ID: 11893723
public class myComboBox : ComboBox {
      public int LastSelectedIndex {
             get ...
             set ...
      }

      I would recommend storing the value in viewstate for the control ...

}
0
 

Author Comment

by:RySk8er30
ID: 11893758
Could you be more specific.  I am new to VB.net.

Ryan
0
Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 37

Expert Comment

by:gregoryyoung
ID: 11893818
public class myDropDownList
                  inherits DropDownList

         public property LastSelectedIndex as integer
                  get
                        return m_LastSelectedIndex
                  end get
                  set(byval value as integer)
                         m_LastSelectedIndex = value
                  end get
         end property

         'override the onselectedindexchanged sub to set last selected index'

         'when the control is renderred add lastselectedindex to the viewstate.
end class

if this is just a one out though just do as you mention above and handle it in your code.
0
 

Author Comment

by:RySk8er30
ID: 11893856
How do I do these things...

'override the onselectedindexchanged sub to set last selected index'

'when the control is renderred add lastselectedindex to the viewstate.
0
 
LVL 37

Assisted Solution

by:gregoryyoung
gregoryyoung earned 25 total points
ID: 11893927
there is a method in the class named that override it public overrides sub foo() ... will make you method called instead of the other, you can add functionality this way ... remember to call mybase.method() when you do this.

ViewState["whatever"] = value ... then you can get back the value later ...

If you are not familiar with this stuff I would recommend just doing it in your page as this is much more complex (although reusable)
0
 

Author Comment

by:RySk8er30
ID: 11894053
What is the easiest way to complete my task.  I do not need to reuse anything.  Please be specific.

Ryan
0
 
LVL 7

Accepted Solution

by:
natloz earned 25 total points
ID: 11894248
This is what I do....

'Import required Namespaces
Imports System.Data
Imports System.Data.OleDb
Imports System.Data.SqlClient

Public Class frmMain
    Inherits System.Windows.Forms.Form

    'Global memory of selected criteria in drop downs
    Private intSelectedBranch As Integer = 0  <---------------THIS

'**********************************
'User has changed the Branch filter
'**********************************
Private Sub cboBranch_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboBranch.SelectedIndexChanged
            If cboBranch.SelectedValue <> Nothing Then
                intSelectedBranch = cboBranch.SelectedValue 'Store global selection memory
            End If
End Sub

------------------
Then if you ever need to set it back eg...

If cboBranch.SelectedValue = 5 then
   cboBranch.SelectedValue = intSelectedBranch
endif
0
 

Author Comment

by:RySk8er30
ID: 11894329
Thanks guys.  I ended up just adding hidden fields to my form.

Ryan
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

If you're writing a .NET application to connect to an Access .mdb database and use pre-existing queries that require parameters, you've come to the right place! Let's say the pre-existing query(qryCust) in Access takes a Date as a parameter and l…
It’s quite interesting for me as I worked with Excel using vb.net for some time. Here are some topics which I know want to share with others whom this might help. First of all if you are working with Excel then you need to Download the Following …
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…

746 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

8 Experts available now in Live!

Get 1:1 Help Now