By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
432,101 Members | 1,463 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 432,101 IT Pros & Developers. It's quick & easy.

arraylist - childmdifrm.Activate - how?

P: n/a
In a Parent mdi form I have a datagrid. I select a record
from the grid and then invoke a childmdi form. I add the
childmdi to an arraylist to keep track of it. If a user
has selected multiple records from the grid and has
multiple childmdi forms open and then re-selects a
previously selected record, I want to activate that
childmdi form. Suppose the arraylist contains indexes
0,1,2,3,4 (5 childmdi forms). A user re-selects a child
at index 2. How can I activate that childform?
Pseudocode:
dim arrayfrms As New Arraylist
....
arrayfrms(2).Activate

TIA
Adda
Nov 20 '05 #1
Share this Question
Share on Google+
5 Replies


P: n/a
Thank you all for not holding my hand on this one :).
Here is what I tried that seems to work:

Dim i As Integer = arrEditNum.BinarySearch(drg1
(cma.Position, 0))
Dim frm As frmEdit = CType(arrEditfrm(i), frmEdit)
frm.Activate()

So I get the position of the record on the grid from the
currency manager and the ID value (at column 0 on the
grid). But I am using 2 arraylists. One list contains
the IDs and the 2nd arraylist contains the forms. I was
thinking about creating a small class object to contain
both items (ID and frm) so I could search on the ID
property and then invoke/activate the frm property of my
little class object in the arraylist. but back to square
one:

i = arrObj(??).BinarySearch(...)
Dim frm as...(arrObj(??))

Any suggestions how to get the values of my class object
from the arrylist greatly appreciated.

Adda

-----Original Message-----
In a Parent mdi form I have a datagrid. I select a recordfrom the grid and then invoke a childmdi form. I add the
childmdi to an arraylist to keep track of it. If a user
has selected multiple records from the grid and has
multiple childmdi forms open and then re-selects a
previously selected record, I want to activate that
childmdi form. Suppose the arraylist contains indexes
0,1,2,3,4 (5 childmdi forms). A user re-selects a child
at index 2. How can I activate that childform?
Pseudocode:
dim arrayfrms As New Arraylist
....
arrayfrms(2).Activate

TIA
Adda
.

Nov 20 '05 #2

P: n/a
What about using a Hashtable. You can add an ID/form pair. And that way
you can index into the hashtable directly by the ID of the row, to get the
corresponding form, and you don't need to keep multiple lists.

"Adda" <an*******@discussions.microsoft.com> wrote in message
news:1b*****************************@phx.gbl...
Thank you all for not holding my hand on this one :).
Here is what I tried that seems to work:

Dim i As Integer = arrEditNum.BinarySearch(drg1
(cma.Position, 0))
Dim frm As frmEdit = CType(arrEditfrm(i), frmEdit)
frm.Activate()

So I get the position of the record on the grid from the
currency manager and the ID value (at column 0 on the
grid). But I am using 2 arraylists. One list contains
the IDs and the 2nd arraylist contains the forms. I was
thinking about creating a small class object to contain
both items (ID and frm) so I could search on the ID
property and then invoke/activate the frm property of my
little class object in the arraylist. but back to square
one:

i = arrObj(??).BinarySearch(...)
Dim frm as...(arrObj(??))

Any suggestions how to get the values of my class object
from the arrylist greatly appreciated.

Adda

-----Original Message-----
In a Parent mdi form I have a datagrid. I select a

record
from the grid and then invoke a childmdi form. I add the
childmdi to an arraylist to keep track of it. If a user
has selected multiple records from the grid and has
multiple childmdi forms open and then re-selects a
previously selected record, I want to activate that
childmdi form. Suppose the arraylist contains indexes
0,1,2,3,4 (5 childmdi forms). A user re-selects a child
at index 2. How can I activate that childform?
Pseudocode:
dim arrayfrms As New Arraylist
....
arrayfrms(2).Activate

TIA
Adda
.

Nov 20 '05 #3

P: n/a
This seems like a good idea. May I ask how I retrieve the
value part of the hashtable?

Dim myHT as Hashtable
myHT.Add(0, child)
....
myHT.Add(1, child)
....
myHT.Add(2, child)
....

Now to activate child form at position 1

Dim frm As frmChild = CType(myHT(?), frmChild)
frm.Activate

Thanks for your reply.
Adda
-----Original Message-----
What about using a Hashtable. You can add an ID/form pair. And that wayyou can index into the hashtable directly by the ID of the row, to get thecorresponding form, and you don't need to keep multiple lists.
"Adda" <an*******@discussions.microsoft.com> wrote in messagenews:1b*****************************@phx.gbl...
Thank you all for not holding my hand on this one :).
Here is what I tried that seems to work:

Dim i As Integer = arrEditNum.BinarySearch(drg1
(cma.Position, 0))
Dim frm As frmEdit = CType(arrEditfrm(i), frmEdit)
frm.Activate()

So I get the position of the record on the grid from the
currency manager and the ID value (at column 0 on the
grid). But I am using 2 arraylists. One list contains
the IDs and the 2nd arraylist contains the forms. I was
thinking about creating a small class object to contain
both items (ID and frm) so I could search on the ID
property and then invoke/activate the frm property of my
little class object in the arraylist. but back to square one:

i = arrObj(??).BinarySearch(...)
Dim frm as...(arrObj(??))

Any suggestions how to get the values of my class object
from the arrylist greatly appreciated.

Adda

>-----Original Message-----
>In a Parent mdi form I have a datagrid. I select a

record
>from the grid and then invoke a childmdi form. I add the >childmdi to an arraylist to keep track of it. If a user >has selected multiple records from the grid and has
>multiple childmdi forms open and then re-selects a
>previously selected record, I want to activate that
>childmdi form. Suppose the arraylist contains indexes
>0,1,2,3,4 (5 childmdi forms). A user re-selects a child >at index 2. How can I activate that childform?
>Pseudocode:
>dim arrayfrms As New Arraylist
>....
>arrayfrms(2).Activate
>
>TIA
>Adda
>.
>

.

Nov 20 '05 #4

P: n/a
You have the code correct. You would index it by the ID you gave it when you
added the item. So, 0, 1, or 2 in your case, since you added 3 items, with
those keys. Basically, the first parameter to Add it the key, the second is
the value. So whatever the key was that you are looking for.

Hashtable has complete documentation.

"Adda" <an*******@discussions.microsoft.com> wrote in message
news:1c*****************************@phx.gbl...
This seems like a good idea. May I ask how I retrieve the
value part of the hashtable?

Dim myHT as Hashtable
myHT.Add(0, child)
...
myHT.Add(1, child)
...
myHT.Add(2, child)
...

Now to activate child form at position 1

Dim frm As frmChild = CType(myHT(?), frmChild)
frm.Activate

Thanks for your reply.
Adda
-----Original Message-----
What about using a Hashtable. You can add an ID/form

pair. And that way
you can index into the hashtable directly by the ID of

the row, to get the
corresponding form, and you don't need to keep multiple

lists.

"Adda" <an*******@discussions.microsoft.com> wrote in

message
news:1b*****************************@phx.gbl...
Thank you all for not holding my hand on this one :).
Here is what I tried that seems to work:

Dim i As Integer = arrEditNum.BinarySearch(drg1
(cma.Position, 0))
Dim frm As frmEdit = CType(arrEditfrm(i), frmEdit)
frm.Activate()

So I get the position of the record on the grid from the
currency manager and the ID value (at column 0 on the
grid). But I am using 2 arraylists. One list contains
the IDs and the 2nd arraylist contains the forms. I was
thinking about creating a small class object to contain
both items (ID and frm) so I could search on the ID
property and then invoke/activate the frm property of my
little class object in the arraylist. but back to square one:

i = arrObj(??).BinarySearch(...)
Dim frm as...(arrObj(??))

Any suggestions how to get the values of my class object
from the arrylist greatly appreciated.

Adda
>-----Original Message-----
>In a Parent mdi form I have a datagrid. I select a
record
>from the grid and then invoke a childmdi form. I add the >childmdi to an arraylist to keep track of it. If a user >has selected multiple records from the grid and has
>multiple childmdi forms open and then re-selects a
>previously selected record, I want to activate that
>childmdi form. Suppose the arraylist contains indexes
>0,1,2,3,4 (5 childmdi forms). A user re-selects a child >at index 2. How can I activate that childform?
>Pseudocode:
>dim arrayfrms As New Arraylist
>....
>arrayfrms(2).Activate
>
>TIA
>Adda
>.
>

.

Nov 20 '05 #5

P: n/a
This worked perfectly! Many thanks for your help.

Adda

-----Original Message-----
You have the code correct. You would index it by the ID you gave it when youadded the item. So, 0, 1, or 2 in your case, since you added 3 items, withthose keys. Basically, the first parameter to Add it the key, the second isthe value. So whatever the key was that you are looking for.
Hashtable has complete documentation.

"Adda" <an*******@discussions.microsoft.com> wrote in messagenews:1c*****************************@phx.gbl...
This seems like a good idea. May I ask how I retrieve the value part of the hashtable?

Dim myHT as Hashtable
myHT.Add(0, child)
...
myHT.Add(1, child)
...
myHT.Add(2, child)
...

Now to activate child form at position 1

Dim frm As frmChild = CType(myHT(?), frmChild)
frm.Activate

Thanks for your reply.
Adda
>-----Original Message-----
>What about using a Hashtable. You can add an ID/form

pair. And that way
>you can index into the hashtable directly by the ID of

the row, to get the
>corresponding form, and you don't need to keep multiple

lists.
>
>"Adda" <an*******@discussions.microsoft.com> wrote in

message
>news:1b*****************************@phx.gbl...
>> Thank you all for not holding my hand on this one :).
>> Here is what I tried that seems to work:
>>
>> Dim i As Integer = arrEditNum.BinarySearch(drg1
>> (cma.Position, 0))
>> Dim frm As frmEdit = CType(arrEditfrm(i), frmEdit)
>> frm.Activate()
>>
>> So I get the position of the record on the grid from the >> currency manager and the ID value (at column 0 on the
>> grid). But I am using 2 arraylists. One list contains >> the IDs and the 2nd arraylist contains the forms. I was >> thinking about creating a small class object to contain >> both items (ID and frm) so I could search on the ID
>> property and then invoke/activate the frm property of my >> little class object in the arraylist. but back to

square
>> one:
>>
>> i = arrObj(??).BinarySearch(...)
>> Dim frm as...(arrObj(??))
>>
>> Any suggestions how to get the values of my class object >> from the arrylist greatly appreciated.
>>
>> Adda
>>
>>
>> >-----Original Message-----
>> >In a Parent mdi form I have a datagrid. I select a
>> record
>> >from the grid and then invoke a childmdi form. I add
the
>> >childmdi to an arraylist to keep track of it. If a

user
>> >has selected multiple records from the grid and has
>> >multiple childmdi forms open and then re-selects a
>> >previously selected record, I want to activate that
>> >childmdi form. Suppose the arraylist contains

indexes >> >0,1,2,3,4 (5 childmdi forms). A user re-selects a

child
>> >at index 2. How can I activate that childform?
>> >Pseudocode:
>> >dim arrayfrms As New Arraylist
>> >....
>> >arrayfrms(2).Activate
>> >
>> >TIA
>> >Adda
>> >.
>> >
>
>
>.
>

.

Nov 20 '05 #6

This discussion thread is closed

Replies have been disabled for this discussion.