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)
-   -   Custom Image Button help. (http://www.velocityreviews.com/forums/t778998-custom-image-button-help.html)

CK 10-05-2006 11:29 PM

Custom Image Button help.
 
Hello All,
I am trying to extend the default asp:ImageButton to include an image for an
enabled state and a second image for a disabled state. I currently did this
by extending the ImageButton class in a custom control, creating a property
for each of these images (EnabledImageUrl, DisabledImageUrl) and then
overrode the Enabled property to change base.ImageUrl respectively. I am
also trying to use Themes with this web site. The problem is (I can tell by
looking in the page source) that when the image urls are stored in the
custom control they are not being resolved to the actual path of the images
(they are "image\<picName>.gif" in the skin file). Also, when the ImageUrl
is set on the base class it is also not being resolved to the actual (theme)
path. I was wondering if there is something I have to do with my custom
control, some convenience method I can run to resolve these paths or if
there is a specific point in the ASP page lifecycle that I have to plug in
to in order for these paths to get resolved by default.
public class MultiImageButton : ImageButton
{
private string _enabledImageUrl;
private string _disabledImageUrl;
public bool Enabled
{
get { return base.Enabled; }
set{
base.Enabled = value;
base.ImageUrl = value ? _enabledImageUrl :
_disabledImageUrl;
}
}

public string EnabledImageUrl
{
get { return _enabledImageUrl; }
set{
_enabledImageUrl = value;
if (Enabled)
base.ImageUrl = Page._enabledImageUrl;
}
}

public string DisabledImageUrl
{
get
{
return _disabledImageUrl;
}
set
{
_disabledImageUrl = value;
if (!Enabled)
base.ImageUrl = _disabledImageUrl;
}
}
}




Cowboy \(Gregory A. Beamer\) 10-06-2006 08:18 PM

Re: Custom Image Button help.
 
The client side url is resolved in the base class with the method
ResolveClientUrl:

base.ResolveClientUrl(base.ImageUrl);


--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA
http://gregorybeamer.spaces.live.com

*************************************************
Think outside of the box!
*************************************************
"CK" <c_kettenbach@hotmail.com> wrote in message
news:1zgVg.10242$e66.4943@newssvr13.news.prodigy.c om...
> Hello All,
> I am trying to extend the default asp:ImageButton to include an image for
> an
> enabled state and a second image for a disabled state. I currently did
> this
> by extending the ImageButton class in a custom control, creating a
> property
> for each of these images (EnabledImageUrl, DisabledImageUrl) and then
> overrode the Enabled property to change base.ImageUrl respectively. I am
> also trying to use Themes with this web site. The problem is (I can tell
> by
> looking in the page source) that when the image urls are stored in the
> custom control they are not being resolved to the actual path of the
> images
> (they are "image\<picName>.gif" in the skin file). Also, when the
> ImageUrl
> is set on the base class it is also not being resolved to the actual
> (theme)
> path. I was wondering if there is something I have to do with my custom
> control, some convenience method I can run to resolve these paths or if
> there is a specific point in the ASP page lifecycle that I have to plug in
> to in order for these paths to get resolved by default.
> public class MultiImageButton : ImageButton
> {
> private string _enabledImageUrl;
> private string _disabledImageUrl;
> public bool Enabled
> {
> get { return base.Enabled; }
> set{
> base.Enabled = value;
> base.ImageUrl = value ? _enabledImageUrl :
> _disabledImageUrl;
> }
> }
>
> public string EnabledImageUrl
> {
> get { return _enabledImageUrl; }
> set{
> _enabledImageUrl = value;
> if (Enabled)
> base.ImageUrl = Page._enabledImageUrl;
> }
> }
>
> public string DisabledImageUrl
> {
> get
> {
> return _disabledImageUrl;
> }
> set
> {
> _disabledImageUrl = value;
> if (!Enabled)
> base.ImageUrl = _disabledImageUrl;
> }
> }
> }
>
>
>





All times are GMT. The time now is 01:14 PM.

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