Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   ASP .Net Web Controls (http://www.velocityreviews.com/forums/f63-asp-net-web-controls.html)
-   -   handling events in usercontrols (http://www.velocityreviews.com/forums/t780686-handling-events-in-usercontrols.html)

John Hopper 06-24-2008 03:39 PM

handling events in usercontrols
 
Hello,

I have a button in an aspx page. When that button is clicked I want to
change a css class in a usercontrol in that page. However the button's click
event is not raised until after the usercontrol loads, and there is no
postback after the click event. How can I do this?

Thank you,

Nathan Sokalski 06-24-2008 03:53 PM

Re: handling events in usercontrols
 
Postback events (such as the Click event) never occur until after the Load
event. What code are you using to change the CSS class, and what event is
that code in?
--
Nathan Sokalski
njsokalski@hotmail.com
http://www.nathansokalski.com/

"John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
> Hello,
>
> I have a button in an aspx page. When that button is clicked I want to
> change a css class in a usercontrol in that page. However the button's
> click
> event is not raised until after the usercontrol loads, and there is no
> postback after the click event. How can I do this?
>
> Thank you,




foton 06-24-2008 04:24 PM

Re: handling events in usercontrols
 
In the aspx page, in the button_click event handler, I set the cssClass of a
button in a usercontrol contained by the aspx page. Since the event handler
fires after the usercontrol is loaded, that doesn't work. How else to
approach this?

Thanks,

"Nathan Sokalski" wrote:

> Postback events (such as the Click event) never occur until after the Load
> event. What code are you using to change the CSS class, and what event is
> that code in?
> --
> Nathan Sokalski
> njsokalski@hotmail.com
> http://www.nathansokalski.com/
>
> "John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
> news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
> > Hello,
> >
> > I have a button in an aspx page. When that button is clicked I want to
> > change a css class in a usercontrol in that page. However the button's
> > click
> > event is not raised until after the usercontrol loads, and there is no
> > postback after the click event. How can I do this?
> >
> > Thank you,

>
>
>


foton 06-24-2008 04:43 PM

Re: handling events in usercontrols
 
I can't make the change client-side because the aspx page has a master page
and asp mangles the names of controls to keep them unique. So I've tried to
make the change in the code-behind of the aspx page or the master page but
the button_click event is always handled last, after all of the parts of the
page have loaded.

Thanks!


"foton" wrote:

> In the aspx page, in the button_click event handler, I set the cssClass of a
> button in a usercontrol contained by the aspx page. Since the event handler
> fires after the usercontrol is loaded, that doesn't work. How else to
> approach this?
>
> Thanks,
>
> "Nathan Sokalski" wrote:
>
> > Postback events (such as the Click event) never occur until after the Load
> > event. What code are you using to change the CSS class, and what event is
> > that code in?
> > --
> > Nathan Sokalski
> > njsokalski@hotmail.com
> > http://www.nathansokalski.com/
> >
> > "John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
> > news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
> > > Hello,
> > >
> > > I have a button in an aspx page. When that button is clicked I want to
> > > change a css class in a usercontrol in that page. However the button's
> > > click
> > > event is not raised until after the usercontrol loads, and there is no
> > > postback after the click event. How can I do this?
> > >
> > > Thank you,

> >
> >
> >


Evan Freeman 06-24-2008 05:27 PM

Re: handling events in usercontrols
 
One it doesn't mangle the name per say. You could easily expose the
generated name to your client side script.

<asp:Button ID="MyControl" runat="server" Text="Foo"/>

var control = <%MyControl.ClientId %>;
document.getElementById(control).cssCLass = "CoolBeans";

Second why would you want to change the style before the elements are
loaded, you'd just spit out errors, the dom needs to be ready befor eyou
start manipulation of tags. Anyhow the above should let you do what you need
client side. It's not perfect I typed it from memory.

Enjoy!





--
Evan Freeman
Evan.E.Freeman@gmail.com
http://evanfreeman.blogspot.com
"foton" <jbhopper@newsgroups.nospam.com> wrote in message
news:374A274A-E13C-4F42-90F8-04E2A0DA46BE@microsoft.com...
>I can't make the change client-side because the aspx page has a master page
> and asp mangles the names of controls to keep them unique. So I've tried
> to
> make the change in the code-behind of the aspx page or the master page but
> the button_click event is always handled last, after all of the parts of
> the
> page have loaded.
>
> Thanks!
>
>
> "foton" wrote:
>
>> In the aspx page, in the button_click event handler, I set the cssClass
>> of a
>> button in a usercontrol contained by the aspx page. Since the event
>> handler
>> fires after the usercontrol is loaded, that doesn't work. How else to
>> approach this?
>>
>> Thanks,
>>
>> "Nathan Sokalski" wrote:
>>
>> > Postback events (such as the Click event) never occur until after the
>> > Load
>> > event. What code are you using to change the CSS class, and what event
>> > is
>> > that code in?
>> > --
>> > Nathan Sokalski
>> > njsokalski@hotmail.com
>> > http://www.nathansokalski.com/
>> >
>> > "John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
>> > news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
>> > > Hello,
>> > >
>> > > I have a button in an aspx page. When that button is clicked I want
>> > > to
>> > > change a css class in a usercontrol in that page. However the
>> > > button's
>> > > click
>> > > event is not raised until after the usercontrol loads, and there is
>> > > no
>> > > postback after the click event. How can I do this?
>> > >
>> > > Thank you,
>> >
>> >
>> >




foton 06-24-2008 06:10 PM

Re: handling events in usercontrols
 
I'm sorry that my question isn't clear. I have an aspx page which uses a
master page. In that aspx page I have 9 instances of the same usercontrol. I
have other pages with different numbers of this usercontrol. Each usercontrol
has a button named "btnEdit". When a 'preview" button is clicked in the aspx
page I need to hide the btnEdit buttons. Each will have a unique id thanks to
asp's efforts to keep them unique. The "preview" button's click event fires
in the aspx page's codebehind AFTER the 9 usercontrols and their edit buttons
have loaded. So what would be a way to change the cssClass of each of the
usercontrol's btnEdit buttons as a result of the "preview" button being
clicked in the containing aspx page?

Thank you,

"Evan Freeman" wrote:

> One it doesn't mangle the name per say. You could easily expose the
> generated name to your client side script.
>
> <asp:Button ID="MyControl" runat="server" Text="Foo"/>
>
> var control = <%MyControl.ClientId %>;
> document.getElementById(control).cssCLass = "CoolBeans";
>
> Second why would you want to change the style before the elements are
> loaded, you'd just spit out errors, the dom needs to be ready befor eyou
> start manipulation of tags. Anyhow the above should let you do what you need
> client side. It's not perfect I typed it from memory.
>
> Enjoy!
>
>
>
>
>
> --
> Evan Freeman
> Evan.E.Freeman@gmail.com
> http://evanfreeman.blogspot.com
> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
> news:374A274A-E13C-4F42-90F8-04E2A0DA46BE@microsoft.com...
> >I can't make the change client-side because the aspx page has a master page
> > and asp mangles the names of controls to keep them unique. So I've tried
> > to
> > make the change in the code-behind of the aspx page or the master page but
> > the button_click event is always handled last, after all of the parts of
> > the
> > page have loaded.
> >
> > Thanks!
> >
> >
> > "foton" wrote:
> >
> >> In the aspx page, in the button_click event handler, I set the cssClass
> >> of a
> >> button in a usercontrol contained by the aspx page. Since the event
> >> handler
> >> fires after the usercontrol is loaded, that doesn't work. How else to
> >> approach this?
> >>
> >> Thanks,
> >>
> >> "Nathan Sokalski" wrote:
> >>
> >> > Postback events (such as the Click event) never occur until after the
> >> > Load
> >> > event. What code are you using to change the CSS class, and what event
> >> > is
> >> > that code in?
> >> > --
> >> > Nathan Sokalski
> >> > njsokalski@hotmail.com
> >> > http://www.nathansokalski.com/
> >> >
> >> > "John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
> >> > news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
> >> > > Hello,
> >> > >
> >> > > I have a button in an aspx page. When that button is clicked I want
> >> > > to
> >> > > change a css class in a usercontrol in that page. However the
> >> > > button's
> >> > > click
> >> > > event is not raised until after the usercontrol loads, and there is
> >> > > no
> >> > > postback after the click event. How can I do this?
> >> > >
> >> > > Thank you,
> >> >
> >> >
> >> >

>
>
>


Evan Freeman 06-24-2008 06:24 PM

Re: handling events in usercontrols
 
Are these controls dynamically created?

Anyhow the method I told you should work, just expose all the generated id's
as an array, and then loop through. I mean you are specifying an ID of some
kind in the markup, if not then you need to rethink what your doing.

Another way to do it would be to expose an event handler in your control and
make them all listen to the click event of the preview button, then do your
CssChanging from with in that.

--
Evan Freeman
Evan.E.Freeman@gmail.com
http://evanfreeman.blogspot.com
"foton" <jbhopper@newsgroups.nospam.com> wrote in message
news:F4BA8669-8A1A-49C8-85F7-735DCD294A77@microsoft.com...
> I'm sorry that my question isn't clear. I have an aspx page which uses a
> master page. In that aspx page I have 9 instances of the same usercontrol.
> I
> have other pages with different numbers of this usercontrol. Each
> usercontrol
> has a button named "btnEdit". When a 'preview" button is clicked in the
> aspx
> page I need to hide the btnEdit buttons. Each will have a unique id thanks
> to
> asp's efforts to keep them unique. The "preview" button's click event
> fires
> in the aspx page's codebehind AFTER the 9 usercontrols and their edit
> buttons
> have loaded. So what would be a way to change the cssClass of each of the
> usercontrol's btnEdit buttons as a result of the "preview" button being
> clicked in the containing aspx page?
>
> Thank you,
>
> "Evan Freeman" wrote:
>
>> One it doesn't mangle the name per say. You could easily expose the
>> generated name to your client side script.
>>
>> <asp:Button ID="MyControl" runat="server" Text="Foo"/>
>>
>> var control = <%MyControl.ClientId %>;
>> document.getElementById(control).cssCLass = "CoolBeans";
>>
>> Second why would you want to change the style before the elements are
>> loaded, you'd just spit out errors, the dom needs to be ready befor eyou
>> start manipulation of tags. Anyhow the above should let you do what you
>> need
>> client side. It's not perfect I typed it from memory.
>>
>> Enjoy!
>>
>>
>>
>>
>>
>> --
>> Evan Freeman
>> Evan.E.Freeman@gmail.com
>> http://evanfreeman.blogspot.com
>> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
>> news:374A274A-E13C-4F42-90F8-04E2A0DA46BE@microsoft.com...
>> >I can't make the change client-side because the aspx page has a master
>> >page
>> > and asp mangles the names of controls to keep them unique. So I've
>> > tried
>> > to
>> > make the change in the code-behind of the aspx page or the master page
>> > but
>> > the button_click event is always handled last, after all of the parts
>> > of
>> > the
>> > page have loaded.
>> >
>> > Thanks!
>> >
>> >
>> > "foton" wrote:
>> >
>> >> In the aspx page, in the button_click event handler, I set the
>> >> cssClass
>> >> of a
>> >> button in a usercontrol contained by the aspx page. Since the event
>> >> handler
>> >> fires after the usercontrol is loaded, that doesn't work. How else to
>> >> approach this?
>> >>
>> >> Thanks,
>> >>
>> >> "Nathan Sokalski" wrote:
>> >>
>> >> > Postback events (such as the Click event) never occur until after
>> >> > the
>> >> > Load
>> >> > event. What code are you using to change the CSS class, and what
>> >> > event
>> >> > is
>> >> > that code in?
>> >> > --
>> >> > Nathan Sokalski
>> >> > njsokalski@hotmail.com
>> >> > http://www.nathansokalski.com/
>> >> >
>> >> > "John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
>> >> > news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
>> >> > > Hello,
>> >> > >
>> >> > > I have a button in an aspx page. When that button is clicked I
>> >> > > want
>> >> > > to
>> >> > > change a css class in a usercontrol in that page. However the
>> >> > > button's
>> >> > > click
>> >> > > event is not raised until after the usercontrol loads, and there
>> >> > > is
>> >> > > no
>> >> > > postback after the click event. How can I do this?
>> >> > >
>> >> > > Thank you,
>> >> >
>> >> >
>> >> >

>>
>>
>>




foton 06-24-2008 06:40 PM

Re: handling events in usercontrols
 
Evan,

Thanks for your advice! How do I make the usercontrols event handler listen
for the containing page's button click event? Would it be something like ...
handles me.parent.page.findControl("btnPreview")_click() or something like
that?

"Evan Freeman" wrote:

> Are these controls dynamically created?
>
> Anyhow the method I told you should work, just expose all the generated id's
> as an array, and then loop through. I mean you are specifying an ID of some
> kind in the markup, if not then you need to rethink what your doing.
>
> Another way to do it would be to expose an event handler in your control and
> make them all listen to the click event of the preview button, then do your
> CssChanging from with in that.
>
> --
> Evan Freeman
> Evan.E.Freeman@gmail.com
> http://evanfreeman.blogspot.com
> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
> news:F4BA8669-8A1A-49C8-85F7-735DCD294A77@microsoft.com...
> > I'm sorry that my question isn't clear. I have an aspx page which uses a
> > master page. In that aspx page I have 9 instances of the same usercontrol.
> > I
> > have other pages with different numbers of this usercontrol. Each
> > usercontrol
> > has a button named "btnEdit". When a 'preview" button is clicked in the
> > aspx
> > page I need to hide the btnEdit buttons. Each will have a unique id thanks
> > to
> > asp's efforts to keep them unique. The "preview" button's click event
> > fires
> > in the aspx page's codebehind AFTER the 9 usercontrols and their edit
> > buttons
> > have loaded. So what would be a way to change the cssClass of each of the
> > usercontrol's btnEdit buttons as a result of the "preview" button being
> > clicked in the containing aspx page?
> >
> > Thank you,
> >
> > "Evan Freeman" wrote:
> >
> >> One it doesn't mangle the name per say. You could easily expose the
> >> generated name to your client side script.
> >>
> >> <asp:Button ID="MyControl" runat="server" Text="Foo"/>
> >>
> >> var control = <%MyControl.ClientId %>;
> >> document.getElementById(control).cssCLass = "CoolBeans";
> >>
> >> Second why would you want to change the style before the elements are
> >> loaded, you'd just spit out errors, the dom needs to be ready befor eyou
> >> start manipulation of tags. Anyhow the above should let you do what you
> >> need
> >> client side. It's not perfect I typed it from memory.
> >>
> >> Enjoy!
> >>
> >>
> >>
> >>
> >>
> >> --
> >> Evan Freeman
> >> Evan.E.Freeman@gmail.com
> >> http://evanfreeman.blogspot.com
> >> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
> >> news:374A274A-E13C-4F42-90F8-04E2A0DA46BE@microsoft.com...
> >> >I can't make the change client-side because the aspx page has a master
> >> >page
> >> > and asp mangles the names of controls to keep them unique. So I've
> >> > tried
> >> > to
> >> > make the change in the code-behind of the aspx page or the master page
> >> > but
> >> > the button_click event is always handled last, after all of the parts
> >> > of
> >> > the
> >> > page have loaded.
> >> >
> >> > Thanks!
> >> >
> >> >
> >> > "foton" wrote:
> >> >
> >> >> In the aspx page, in the button_click event handler, I set the
> >> >> cssClass
> >> >> of a
> >> >> button in a usercontrol contained by the aspx page. Since the event
> >> >> handler
> >> >> fires after the usercontrol is loaded, that doesn't work. How else to
> >> >> approach this?
> >> >>
> >> >> Thanks,
> >> >>
> >> >> "Nathan Sokalski" wrote:
> >> >>
> >> >> > Postback events (such as the Click event) never occur until after
> >> >> > the
> >> >> > Load
> >> >> > event. What code are you using to change the CSS class, and what
> >> >> > event
> >> >> > is
> >> >> > that code in?
> >> >> > --
> >> >> > Nathan Sokalski
> >> >> > njsokalski@hotmail.com
> >> >> > http://www.nathansokalski.com/
> >> >> >
> >> >> > "John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
> >> >> > news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
> >> >> > > Hello,
> >> >> > >
> >> >> > > I have a button in an aspx page. When that button is clicked I
> >> >> > > want
> >> >> > > to
> >> >> > > change a css class in a usercontrol in that page. However the
> >> >> > > button's
> >> >> > > click
> >> >> > > event is not raised until after the usercontrol loads, and there
> >> >> > > is
> >> >> > > no
> >> >> > > postback after the click event. How can I do this?
> >> >> > >
> >> >> > > Thank you,
> >> >> >
> >> >> >
> >> >> >
> >>
> >>
> >>

>
>
>


Evan Freeman 06-24-2008 07:01 PM

Re: handling events in usercontrols
 
Button1.Click += new
System.EventHandler(MyWierdUserControl1.myEventHan dler);Button1.Click += new
System.EventHandler(MyWierdUserControl2.myEventHan dler);Button1.Click += new
System.EventHandler(MyWierdUserControl3.myEventHan dler);
--
Evan Freeman
Evan.E.Freeman@gmail.com
http://evanfreeman.blogspot.com
"foton" <jbhopper@newsgroups.nospam.com> wrote in message
news:1738C88C-99F9-4C63-A87C-FD65C236E962@microsoft.com...
> Evan,
>
> Thanks for your advice! How do I make the usercontrols event handler
> listen
> for the containing page's button click event? Would it be something like
> ...
> handles me.parent.page.findControl("btnPreview")_click() or something like
> that?
>
> "Evan Freeman" wrote:
>
>> Are these controls dynamically created?
>>
>> Anyhow the method I told you should work, just expose all the generated
>> id's
>> as an array, and then loop through. I mean you are specifying an ID of
>> some
>> kind in the markup, if not then you need to rethink what your doing.
>>
>> Another way to do it would be to expose an event handler in your control
>> and
>> make them all listen to the click event of the preview button, then do
>> your
>> CssChanging from with in that.
>>
>> --
>> Evan Freeman
>> Evan.E.Freeman@gmail.com
>> http://evanfreeman.blogspot.com
>> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
>> news:F4BA8669-8A1A-49C8-85F7-735DCD294A77@microsoft.com...
>> > I'm sorry that my question isn't clear. I have an aspx page which uses
>> > a
>> > master page. In that aspx page I have 9 instances of the same
>> > usercontrol.
>> > I
>> > have other pages with different numbers of this usercontrol. Each
>> > usercontrol
>> > has a button named "btnEdit". When a 'preview" button is clicked in the
>> > aspx
>> > page I need to hide the btnEdit buttons. Each will have a unique id
>> > thanks
>> > to
>> > asp's efforts to keep them unique. The "preview" button's click event
>> > fires
>> > in the aspx page's codebehind AFTER the 9 usercontrols and their edit
>> > buttons
>> > have loaded. So what would be a way to change the cssClass of each of
>> > the
>> > usercontrol's btnEdit buttons as a result of the "preview" button being
>> > clicked in the containing aspx page?
>> >
>> > Thank you,
>> >
>> > "Evan Freeman" wrote:
>> >
>> >> One it doesn't mangle the name per say. You could easily expose the
>> >> generated name to your client side script.
>> >>
>> >> <asp:Button ID="MyControl" runat="server" Text="Foo"/>
>> >>
>> >> var control = <%MyControl.ClientId %>;
>> >> document.getElementById(control).cssCLass = "CoolBeans";
>> >>
>> >> Second why would you want to change the style before the elements are
>> >> loaded, you'd just spit out errors, the dom needs to be ready befor
>> >> eyou
>> >> start manipulation of tags. Anyhow the above should let you do what
>> >> you
>> >> need
>> >> client side. It's not perfect I typed it from memory.
>> >>
>> >> Enjoy!
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> --
>> >> Evan Freeman
>> >> Evan.E.Freeman@gmail.com
>> >> http://evanfreeman.blogspot.com
>> >> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
>> >> news:374A274A-E13C-4F42-90F8-04E2A0DA46BE@microsoft.com...
>> >> >I can't make the change client-side because the aspx page has a
>> >> >master
>> >> >page
>> >> > and asp mangles the names of controls to keep them unique. So I've
>> >> > tried
>> >> > to
>> >> > make the change in the code-behind of the aspx page or the master
>> >> > page
>> >> > but
>> >> > the button_click event is always handled last, after all of the
>> >> > parts
>> >> > of
>> >> > the
>> >> > page have loaded.
>> >> >
>> >> > Thanks!
>> >> >
>> >> >
>> >> > "foton" wrote:
>> >> >
>> >> >> In the aspx page, in the button_click event handler, I set the
>> >> >> cssClass
>> >> >> of a
>> >> >> button in a usercontrol contained by the aspx page. Since the event
>> >> >> handler
>> >> >> fires after the usercontrol is loaded, that doesn't work. How else
>> >> >> to
>> >> >> approach this?
>> >> >>
>> >> >> Thanks,
>> >> >>
>> >> >> "Nathan Sokalski" wrote:
>> >> >>
>> >> >> > Postback events (such as the Click event) never occur until after
>> >> >> > the
>> >> >> > Load
>> >> >> > event. What code are you using to change the CSS class, and what
>> >> >> > event
>> >> >> > is
>> >> >> > that code in?
>> >> >> > --
>> >> >> > Nathan Sokalski
>> >> >> > njsokalski@hotmail.com
>> >> >> > http://www.nathansokalski.com/
>> >> >> >
>> >> >> > "John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
>> >> >> > news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
>> >> >> > > Hello,
>> >> >> > >
>> >> >> > > I have a button in an aspx page. When that button is clicked I
>> >> >> > > want
>> >> >> > > to
>> >> >> > > change a css class in a usercontrol in that page. However the
>> >> >> > > button's
>> >> >> > > click
>> >> >> > > event is not raised until after the usercontrol loads, and
>> >> >> > > there
>> >> >> > > is
>> >> >> > > no
>> >> >> > > postback after the click event. How can I do this?
>> >> >> > >
>> >> >> > > Thank you,
>> >> >> >
>> >> >> >
>> >> >> >
>> >>
>> >>
>> >>

>>
>>
>>




foton 06-24-2008 07:40 PM

Re: handling events in usercontrols
 
Thanks. It's weird not wierd. Actually it's not even weird. It's just
reusable. :)

"Evan Freeman" wrote:

> Button1.Click += new
> System.EventHandler(MyWierdUserControl1.myEventHan dler);Button1.Click += new
> System.EventHandler(MyWierdUserControl2.myEventHan dler);Button1.Click += new
> System.EventHandler(MyWierdUserControl3.myEventHan dler);
> --
> Evan Freeman
> Evan.E.Freeman@gmail.com
> http://evanfreeman.blogspot.com
> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
> news:1738C88C-99F9-4C63-A87C-FD65C236E962@microsoft.com...
> > Evan,
> >
> > Thanks for your advice! How do I make the usercontrols event handler
> > listen
> > for the containing page's button click event? Would it be something like
> > ...
> > handles me.parent.page.findControl("btnPreview")_click() or something like
> > that?
> >
> > "Evan Freeman" wrote:
> >
> >> Are these controls dynamically created?
> >>
> >> Anyhow the method I told you should work, just expose all the generated
> >> id's
> >> as an array, and then loop through. I mean you are specifying an ID of
> >> some
> >> kind in the markup, if not then you need to rethink what your doing.
> >>
> >> Another way to do it would be to expose an event handler in your control
> >> and
> >> make them all listen to the click event of the preview button, then do
> >> your
> >> CssChanging from with in that.
> >>
> >> --
> >> Evan Freeman
> >> Evan.E.Freeman@gmail.com
> >> http://evanfreeman.blogspot.com
> >> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
> >> news:F4BA8669-8A1A-49C8-85F7-735DCD294A77@microsoft.com...
> >> > I'm sorry that my question isn't clear. I have an aspx page which uses
> >> > a
> >> > master page. In that aspx page I have 9 instances of the same
> >> > usercontrol.
> >> > I
> >> > have other pages with different numbers of this usercontrol. Each
> >> > usercontrol
> >> > has a button named "btnEdit". When a 'preview" button is clicked in the
> >> > aspx
> >> > page I need to hide the btnEdit buttons. Each will have a unique id
> >> > thanks
> >> > to
> >> > asp's efforts to keep them unique. The "preview" button's click event
> >> > fires
> >> > in the aspx page's codebehind AFTER the 9 usercontrols and their edit
> >> > buttons
> >> > have loaded. So what would be a way to change the cssClass of each of
> >> > the
> >> > usercontrol's btnEdit buttons as a result of the "preview" button being
> >> > clicked in the containing aspx page?
> >> >
> >> > Thank you,
> >> >
> >> > "Evan Freeman" wrote:
> >> >
> >> >> One it doesn't mangle the name per say. You could easily expose the
> >> >> generated name to your client side script.
> >> >>
> >> >> <asp:Button ID="MyControl" runat="server" Text="Foo"/>
> >> >>
> >> >> var control = <%MyControl.ClientId %>;
> >> >> document.getElementById(control).cssCLass = "CoolBeans";
> >> >>
> >> >> Second why would you want to change the style before the elements are
> >> >> loaded, you'd just spit out errors, the dom needs to be ready befor
> >> >> eyou
> >> >> start manipulation of tags. Anyhow the above should let you do what
> >> >> you
> >> >> need
> >> >> client side. It's not perfect I typed it from memory.
> >> >>
> >> >> Enjoy!
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> Evan Freeman
> >> >> Evan.E.Freeman@gmail.com
> >> >> http://evanfreeman.blogspot.com
> >> >> "foton" <jbhopper@newsgroups.nospam.com> wrote in message
> >> >> news:374A274A-E13C-4F42-90F8-04E2A0DA46BE@microsoft.com...
> >> >> >I can't make the change client-side because the aspx page has a
> >> >> >master
> >> >> >page
> >> >> > and asp mangles the names of controls to keep them unique. So I've
> >> >> > tried
> >> >> > to
> >> >> > make the change in the code-behind of the aspx page or the master
> >> >> > page
> >> >> > but
> >> >> > the button_click event is always handled last, after all of the
> >> >> > parts
> >> >> > of
> >> >> > the
> >> >> > page have loaded.
> >> >> >
> >> >> > Thanks!
> >> >> >
> >> >> >
> >> >> > "foton" wrote:
> >> >> >
> >> >> >> In the aspx page, in the button_click event handler, I set the
> >> >> >> cssClass
> >> >> >> of a
> >> >> >> button in a usercontrol contained by the aspx page. Since the event
> >> >> >> handler
> >> >> >> fires after the usercontrol is loaded, that doesn't work. How else
> >> >> >> to
> >> >> >> approach this?
> >> >> >>
> >> >> >> Thanks,
> >> >> >>
> >> >> >> "Nathan Sokalski" wrote:
> >> >> >>
> >> >> >> > Postback events (such as the Click event) never occur until after
> >> >> >> > the
> >> >> >> > Load
> >> >> >> > event. What code are you using to change the CSS class, and what
> >> >> >> > event
> >> >> >> > is
> >> >> >> > that code in?
> >> >> >> > --
> >> >> >> > Nathan Sokalski
> >> >> >> > njsokalski@hotmail.com
> >> >> >> > http://www.nathansokalski.com/
> >> >> >> >
> >> >> >> > "John Hopper" <jbhopper@newsgroups.nospam.com> wrote in message
> >> >> >> > news:9C8ADC19-41FE-49E7-947D-E32861D8E5CD@microsoft.com...
> >> >> >> > > Hello,
> >> >> >> > >
> >> >> >> > > I have a button in an aspx page. When that button is clicked I
> >> >> >> > > want
> >> >> >> > > to
> >> >> >> > > change a css class in a usercontrol in that page. However the
> >> >> >> > > button's
> >> >> >> > > click
> >> >> >> > > event is not raised until after the usercontrol loads, and
> >> >> >> > > there
> >> >> >> > > is
> >> >> >> > > no
> >> >> >> > > postback after the click event. How can I do this?
> >> >> >> > >
> >> >> >> > > Thank you,
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >>
> >> >>
> >> >>
> >>
> >>
> >>

>
>
>



All times are GMT. The time now is 08:20 PM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.