I know the count is wrong, because first of all, I used the Controls.Add()
method to add multiple Controls, so I know that there are more than 1. Also,
I did a Debug and looked at the Controls.Count property immediately before
and immediately after adding the control, and it had changed from 1 to 2.
And yet, on the next postback that same Control had a Controls.Count value
of 1 again instead of remaining at 2. This did not make since to me, so the
only possibility I could come up with (although I admit I have very little
experience with threads and synchronization, even though this is not a
multi-threaded application) was that it had something to do with all the
synchronization stuff I found while trying to find an answer. I'm totally
confused about this now. Any ideas?
--
Nathan Sokalski
http://www.nathansokalski.com/
"bruce barker" <> wrote in message
news:...
> you are on the wrong track. unless you are spinning up new threads during
> a page request and those threads are adding child controls, there is no
> need to use Controls.IsSynchronized.
>
> Controls.Count is only your controls immediate count. each of its child
> controls can have children. also when you test it, all the children may
> not be created.
>
> what makes you think the count is wrong?
>
> -- bruce (sqlwork.com)
>
>
> Nathan Sokalski wrote:
>> I have a section of my code in which I need to know how many child
>> controls a control has. Right now Controls.Count is returning the wrong
>> value, which I realize is because Controls.IsSynchronized is False. After
>> spending a few hours trying to figure out how I could determine the
>> number of child controls, I discovered that Controls.SyncRoot is somehow
>> involved, but I had trouble understanding exactly what I need to do.
>> Could somebody please help me? Thanks.