Retrieving contained Controls during postback using LoadPostData

  • Thread starter Thread starter Nathan Sokalski
  • Start date Start date
N

Nathan Sokalski

I am writing a Control that inherits from
System.Web.UI.WebControls.CompositeControl. Like many Controls, my Control
renders more than just one inner Control. When a postback occurs, I need to
get the data posted by these inner Controls (by using the postCollection
argument). However, the postDataKey argument gives the key for the id of the
outer Control. When I need to access the value posted by one of the inner
Controls, I have found that I need to enter the id as a literal String for
the key, but this seems a little too simple for me, with all the Controls
that could get created. Is there some property or method that I should be
using to determine the key? Thanks.
 
That's what I thought, and what I have used in a previous Control of mine,
but when I try to do that here I am recieving an error that the Control does
not exist. When I did a debug session I found that the value of the Control
was Nothing. Therefore, I cannot get to the UniqueID. Any idea what could be
causing this? Thanks.
 
Does your control create child controls in CreateChildControls?. That way
you ensure controls are there when you access the Controls collection.
 
Note: if you access Control instance directly, call EnsureChildControls
before that
 
Thank you for your help, I should probably be slapping myself in the head
for my mistake: I created the Controls in CreateChildControls, but forgot
the Me.Controls.Add() method! Thanks again for your help.
 
Back
Top