Changing Image Source programmatically

Hi
I've got a problem changing my image source based on a value in a variable.
The following function gets kicked off, but I get a TypeError: Error #1009: Cannot access a property or method of a null object reference. error.
I've tried embedding, and the solution you see below (which i found here - as I am chaning it at run time http://forums.adobe.com/message/116979#116979), but no luck
I am certain its how I'm mapping the png, but I can't be sure..... any suggestions?  I've been banging my head against my desk for ages on this!
function (note - the trace proves that the value to change the image is correct)
public function LeversComplete():void{
    if(PodContentBase._ProjectDetail.getItemAt(0).IndustryLeadingMastery == "N")
          trace("Value" + PodContentBase._ProjectDetail.getItemAt(0).IndustryLeadingMastery)
            imgIndustry.source = "/assets/bigcheese.png";
     else {imgIndustry.source = "assets/Nocheese.png"} 
Image (note - this is set as a defualt - and defaults in fine)
       <mx:Image id="imgIndustryleadingtechnicalmastery"
                              source="assets/bigcheese.png"/>
Picture of Directory Structure:

Hi - all done - dead right - The image didnt exisit and i'm trying to stuff things in it - what a divvy -
Anyways, this worked -    I check if the image exists before I try and change it.            
public function LeversComplete():void{
          if (imgIndustryleadingtechnicalmastery){
               if(PodContentBase._ProjectDetail.getItemAt(0).IndustryLeadingMastery == "N") {imgIndustryleadingtechnicalmastery.source="assets/nocheese.png"}
               else {imgIndustryleadingtechnicalmastery.source = "assets/bigcheese.png"} 

Similar Messages

  • Want to change image properties programmatically

    want to change image properties programmatically like
    adjust_to_fit,selection_rectangle,pane,show_pallete.
    Reply as soon as possible.
    [email protected]

    I understand.
    In terms of for the initial Ecommerce switchover we mass updated the MMIMAGE field in partsmaster so that the assumed naming convention of the image files are ITEMCODE.jpg.
    Your solution is good which covers the instance where the image file field is empty and then putting in a empty image field in there.
    The other scenario is that the MMIMAGE field is filled put the physical .jpg file is missing in the file system.  Is there a way to handle that. 
    I checked already the netpoint thumbnail handler .dll and browsed over the available member properties / methods but I don't think such a config exists.
    Mike

  • Change image source distorts new image

    Is there any easy way, once I change image source in Edge Animate, to get it to at least be proportionally correct? When I change an image source with a different size, it comes in distorted.

    If you change the source it will fill the boundaries of the original source image automatically. If the size is different, it is probably better to delete the original image and drop the new one.
    If you are talking about loading an image dynamically and changing them dynamically, use css background image with no-repeat and have you div be the size of the largest image used unless you code the image size when they change.

  • Set Image source programmatically

    I am working on a use case, where I have to set image source programmatically based on an input value. Eg: When I have a value of 'House1' in a form field, I have to display House1.png picture from a folder in file system. How can I do this?

    Thanks Timo.
    JDev Ver: 11.1.2.3
    I used the easy solution to have the images in a sub directory under root and accessing them using EL language. It is working fine. I have another question, as to the process to be implemented if I have to update the images. The application that I am working on has a need to update the images frequently. What is the best way to do it? I am thinking of creating a jar file for images and deploying it to web logic server Ishared library). If I have to add a new image, I can just make a jar file and re-deploy it again. I am new to ADF, so I am not sure if my approach is correct. Please advise.
    And, thanks for your blog. It was helpful.
    -Ashok

  • How to change Image source file name

    Hi,
    I have a logo image on my report that I want to change based on value of my query item. Can someone help me .....how can I change the source of my image item dynamically.
    Thanks
    Aali

    Hello,
    You can use a Formula Column and the property "Read From File" :
    http://www.oracle.com/webapps/online-help/reports/10.1.2/topics/htmlhelp_rwbuild_hs/rwcontxt/props/pi_col_read_from_file.htm
    Regards

  • Question about dynamically changing image source

    hi, this might be a stupid question that i've simply never
    seen, but i have a picture on a page that, when the user clicks a
    link below, needs to change to an altered picture. probably very
    simple, i just need code that will change the image source of a
    named image by clicking a link. thanks for any help you can give
    me.

    You can use a remote rollover technique that uses css
    (nesting one or more elements inside an anchor link) and absolute
    positioning, or JavaScript.
    Here is a quick JavaScript to achieve this effect:
    xhtml code
    <head>
    <script src="external.js" language = "javascript" type =
    "text/javascript"></script>
    </head>
    <body>
    <p><a href="new_page.html" id="arrow"> New
    Page</a></p>
    <img src="images/image1_off.gif" width="100" height="20"
    id="arrowImg" alt="arrow" />
    </body>
    external JavaScript file
    window.onLoad = rolloverInit;
    function rolloverInit() {
    for (var i=0; i<document.links.length; i++)
    var linkObj = document.links
    if (linkObj.id) {
    var imgObj = document.getElementById(linkObj.id + "Img");
    if (imgObj) {
    setupRollover(linkObj, imgObj);
    function setupRollover(thisLink, thisImage) [
    this.Link.imgToChange = thisImage;
    this.Link.onmouseout = rollOut;
    this.Link.onmouseover = rollOver;
    thisLink.outImage = new Image();
    this.Link.outImage.src = this.Image.src;
    thisLink.overImage = new Image();
    thisLink.overImage.src = "images/" + thisLink.id +
    "_on.gif";
    function rollOver() {
    this.imgToChange.src = this.overImage.src;
    function rollOut() {
    this.imageToChange.src = this.outImage.src;
    There is a lot going on here but if you know a little
    JavaScript it will be failry easy to work it out. The important
    thing is to note the file layout, naming conventions and image
    constructs. Make sure the ids, etc are matched in the functions and
    html code.
    This technique shows the user what the image will become if
    they click the text when they mouse over the text link. This is
    handy for showing a preview of an image. You can alter the script
    to change the image without a preview if you don't want that
    effect.
    regards
    Nick Barling
    www.barkingweb.com

  • Setting 'source' of Image component programmatically

    How do you change the source of an mx:Image component
    programmatically in ActionScript?
    I have an image like this:
    <mx:Image id="myImage"
    source="@Embed(source='image1.png')" />
    Then I want to change this in my actionscript to image2.png.
    Why does not the following code work?
    myImage.source = "@Embed(source='image1.png')";
    The image won't load, it just displays a small square icon. I
    am sure that the path is correct because it works when I use the
    Embed statement in the component declaration.
    I appreciate your help!

    The line:
    <mx:Image id="myImage"
    source="@Embed(source='image1.png')" />
    embeds the image into your SWF file at compile time. To
    change the source at run time, you'll try something like:
    myImage.source = "images/image1.png";
    Where images is your folder on the root of web application
    context you're in and image1.png is the image to be loaded.
    Here is from image class help from docs:
    The URL, object, class or string name of a class to load as
    the content. The source property takes the following form:
    source="URLOrPathOrClass"
    source="@Embed(source='PathOrClass')"
    ATTA

  • Have to toggle "Relative to" button each time I try to change an image source

    Dreamweaver CS4 running on Windows 7. 
    When changing an existing image on an existing web page in Dreamweaver by double-clicking the existing image on the page to open the Select Image Source panel, I have to toggle the "Relative to" (Site Root / Document) button for each image.
    In other words, say that when using Design view, I want to replace img1.jpg with img3.jpg, and IMG2.jpg with img4.jpg,   The steps I have to take are:
    1. Double click img1.jpg on the page to open the Select Image Source panel.
    2. Select img3.jpg. 
    3. Click the Relative to button at the bottom of the panel and change it from whichever it is on (Site Root, let's say) to the other option (Document).
    4, Then click OK.
    5. Double click img2.jpg on the page...
    6. Select img4.jpg
    7 Select the other option (SIte Root) in the Relative to drop down
    8. Then click OK
    9. Repeat for each image whose source is being changed.  If one is relative to Site Root, the next will have to be relative to Document, then the next again I have to select Site Root, etc.
    If I don't select the other relative to option, the image source path will not change when I click OK.
    Default Link Relative To in site definition is set to Document.
    It's been like this for weeks now and it's starting to get annoying.  Any ideas?

    David, I tried deleting the corrupt cache flie, no difference.  Deleted the config folder, same.  Other than I lost the extensions... and had to reinstall them.
    However, John's answer is correct.  And clicking another image before clicking the one I want is faster than the way I was doing it.
    It makes no difference if they are .png .jpg or .gif images.
    By the way, I was wrong about my DW version.  Turns out it's CS3.  Guess it's time to upgrade... one of thes days!
    Thanks everyone!
    Message was edited by: tarfh, to add sentence about png images.

  • Changing InlineGraphicElement.source when image is still downloading

    If I detect that the content of an InlineGraphicElement is too large (either pixels of bytes) I want to stop it downloading and replace it with a different image. I successfully detect the cases when it is too large (listener on  InlineGraphicElement.graphic as Loader.contentLoaderInfo).
    I can stop the download by directly calling methods on the Loader, but then changing the source never seems to work on the InlineGraphicElement.
    If I simply change the source on the InlineGraphicElement - it does not stop the loading of the original image - and then never seems to load the new one - if the original hadn't loaded at the time of the switch.

    Hi Richard,
    I have attached a single class project which has a source change on an InlineGraphicElement.
    >One possible workaround would be to set the new source property on the InlineGraphic and then stop the original graphic from loading.
    I tried this (not included in the example I attached) - and successfully stopped the downloading - but did not successfully trigger the downloading of the new source. I think it should happen automatically when you change source - even if the original source was still downloading.
    >Another might be to remove the InlineGraphicElement and insert a new one
    Yes, that is what I ended up doing, but I think it is a clumsy solution.
    Thanks,
    Josh

  • How to set image source path in formsweb.cfg file in forms 11g

    Hi,
    I had written HTML code in the formsweb.cfg file in forms 11g. In the below code i am unable to retrive image file(i.e., .gif, .jpeg) from the server or local machine.
    In the below HTML code i set image source in the image tag as below:
    <img src="E:\Oracle\Middleware\Oracle_FRHome1\tools\web\html\agilis-life-new11_04.GIF"
    Is this correct path to fetch the images from the server or local machine .
    Please help me out how to set path for image in html or is there any alternate process to retrive images.
    Here is the code :
    [INDIVIDUALUAT]
    workingDirectory=D:\Aims10dev\Work
    form=LMstartup.fmx
    userid=rmenu/rmenu@RLIFEQA64
    codebase=/forms/java
    imageBase=codebase
    width=1005
    height=750
    WebUtilArchive=/forms/java/frmwebutil.jar,/forms/webutil/jacob.jar
    WebUtilLogging=off
    WebUtilLoggingDetail=normal
    WebUtilErrorMode=Alert
    WebUtilDispatchMonitorInterval=5
    WebUtilTrustInternal=true
    WebUtilMaxTransferSize=16384
    baseHTMLjinitiator=webutiljini.htm
    baseHTMLjpi=webutiljpi.htm
    archive_jini=frmall_jinit.jar,life-icons-round.jar,Agilis_Icon.jar,life_Icon.jar,personalize.jar,hyperlink.jar,amazingbutton.jar
    archive=frmall.jar
    separateFrame=False
    lookandfeel=Generic
    EndUserMonitoringURL=True
    usesdi=yes
    #HTMLbeforeForm= <table width="1005" border="0" cellspacing="0" cellpadding="0"><tr><td width="200"><img src="/forms/html/agilis-life-logo.gif" width="200" height="80" /></td><td width="10"><img src="/forms/html/agilis-life-new11_02.gif" width="36" height="80" /></td><td width="805" valign="top" background="/forms/html/agilis-life-new11_03.gif"></td></tr></td></tr></table>
    HTMLbeforeForm=<body topmargin="0" leftmargin="0" > <table width="1005" height="100" border="0" cellspacing="0" cellpadding="0"><tr><td width="200" valign="bottom" ><img src="E:\Oracle\Middleware\Oracle_FRHome1\tools\web\html\agilis-life-logo.gif" width="200" height="80" /></td><td width="10" valign="bottom" ><img src="E:\Oracle\Middleware\Oracle_FRHome1\tools\web\html\agilis-life-new11_02.gif" width="36" height="80" /></td><td width="550" valign="bottom" ><img src="E:\Oracle\Middleware\Oracle_FRHome1\tools\web\html\agilis-life-new11_03.gif" width="550" height="80" /></td><td valign="bottom"><table width="219" height="90" border="0" cellspacing="0" cellpadding="0"><tr><td height="36" valign="bottom" align="center"><img src="E:\Oracle\Middleware\Oracle_FRHome1\tools\web\html\agile-logo.jpg" height="36"></td></tr><tr><td height="10" valign="bottom"> <div align="right"><span style="font-family:Arial, Helvetica, sans-serif; font-size:12px; font-weight:bold; text-decoration:none; color:#00000; " >Home | Change Password | Logout</span></div></td></tr><tr><td colspan="3" valign="bottom"><img src="E:\Oracle\Middleware\Oracle_FRHome1\tools\web\html\agilis-life-new11_04.GIF" width="100%" height="39" /></td></tr></table></td></tr></td></tr></table></body>

    AFAIK, this is not the correct way to set the image location.
    We call the working directory as context, so inside the context root along with WEB-INF, maintain a folder with name img and put all the images in that directory.
    You can use either .\<image_folder> or the optimum way would be (if you are using JSPs) to use getContext() method and traverse accordingly.
    FYI,,, using getContext() will give you context root directory, from there it is as simple as accessing any other folder.
    Hope this answers your question.
    Cheers,
    Jeets.

  • Change the source of place holder dynamically in report

    Hi,
    We need to assign values to place holder dynamically in report pages based on the page number.
    Basic requirement is to have dynamic images (generated in before report trigger with file name having timestamp and page number) in dynamic pages (getting repeated based on number of lines in the report).
    Is there any way we can have a place holder mapped to this field (Read from file, type: Image) and change the source dynamically when each page is formatted?
    Any pointers for this will be helpful.
    Thanks,
    Ayyappa

    Hi,
    We need to assign values to place holder dynamically in report pages based on the page number.
    Basic requirement is to have dynamic images (generated in before report trigger with file name having timestamp and page number) in dynamic pages (getting repeated based on number of lines in the report).
    Is there any way we can have a place holder mapped to this field (Read from file, type: Image) and change the source dynamically when each page is formatted?
    Any pointers for this will be helpful.
    Thanks,
    Ayyappa

  • Change images on mouse click

    hi,
    cud anyone help me to change image in a JPanel in JFrame.On MouseClick event. the image should in an panel on mouseclick,plz explain with example source code.
    thank u

    I dvlp MyPanel to accept 2 image file name.
    You can easy change to accept Image instead of file name.
    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.*;
    public class Test {
    public static void main(String args[]) {
    JFrame f = new JFrame("Test");
    MyPanel p = new MyPanel("YourFirstImage.gif", "YourSecondImage.gif");
    p.add(new JButton("Click on Panel (not Button)"));
    f.setContentPane(p);
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.pack();
    f.setVisible(true);
    class MyPanel extends JPanel implements MouseListener {
    Image image, image1, image2;
    public MyPanel(String image1Name, String image2Name) {
    //load image
    try {
    image1 = getToolkit().getImage(getClass().getResource(image1Name));
    image2 = getToolkit().getImage(getClass().getResource(image2Name));
    MediaTracker mt = new MediaTracker(this);
    mt.addImage(image1, 0);
    mt.addImage(image2, 0);
    mt.waitForAll();
    } catch (Exception e) { e.printStackTrace(); }
    this.image1 = image1;
    this.image2 = image2;
    this.image = image1;
    this.addMouseListener(this);
    public void paintComponent(Graphics g) {
    g.drawImage(image, 0, 0, this.getWidth(), this.getHeight(), this);
    public void mouseClicked(MouseEvent e){
    image = (image == image1) ? image2 : image1; // switch between image1, image2
    repaint();
    public Dimension getPreferredSize() {
    Dimension dim = super.getPreferredSize();
    int w = Math.max(image1.getWidth(this), image2.getWidth(this));
    int h = Math.max(image1.getHeight(this), image2.getHeight(this));
    w = Math.max(dim.width, w);
    h = Math.max(dim.height, h);
    return new Dimension(w, h);
    public void mouseEntered(MouseEvent e) {}
    public void mouseExited(MouseEvent e) {}
    public void mousePressed(MouseEvent e) {}
    public void mouseReleased(MouseEvent e) {}

  • Change BitmapImage source on a socket event

    Hello,
    I have a BitmapImage and I would like to change its source at runtime.
    <BitmapImage source="img1.png" id="img" smooth="true" smoothingQuality="high"
           transformX="102" transformY="162">
        <filters>
            <DropShadowFilter distance="-1" angle="45"/>
        </filters>
    </BitmapImage>
    In the script part, I change its source so it points to another image.
    img.source = "img2.png";
    If the previous assignment is inside the mouseDown handler, it works perfectly. But, if I place it in a method that is triggered when data is received through a socket, the source remains unchanged.
    What I've found out, so far, is: I've added an event listener for the type "sourceChanged" and this is actually triggered, but when I inspect the source, it points to the old image.
    Thanks!

    Hi,
    It turned out to be a bug in my code, totally unrelated to sockets or anything else.
    Not sure how to proceed...should I close this post?

  • How to change images of selected items in gridview on selection changed event in universal app

    Hi,
    I am developing Universal App. I have bind the images to the Gridview using ObservableCollection. I have set gridview
    SelectionMode as Multiple . I want to change the images of selected items but I don't know how to do in Selection Changed event of Gridview. I got selected items with the help of
    Gridview SelectedItems property. How can i change the images of respected selected items?
    Please reply me asap.
    Thanks in advance.

    Hi, Sorry for late reply,
    Please change the class : 
    public class ImageCollection : INotifyPropertyChanged
    private string source;
    public string Source
    get { return source; }
    set { SetProperty(ref source, value); }
    public int MyProperty { get; set; }
    protected void SetProperty<T>(ref T storage, T value, [System.Runtime.CompilerServices.CallerMemberName] String propertyName = null)
    if (!object.Equals(storage, value))
    storage = value;
    if (PropertyChanged != null)
    PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    protected void RaisePropertyChanged([System.Runtime.CompilerServices.CallerMemberName] String propertyName = null)
    if (PropertyChanged != null)
    PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    public event PropertyChangedEventHandler PropertyChanged;
    XAML
    <GridView x:Name="gd"
    Tapped="gd_Tapped">
    <GridView.ItemTemplate>
    <DataTemplate>
    <Grid Height="300" Width="250">
    <Image Source="{Binding Source}" Stretch="Fill"/>
    <Grid Height="100" Background="#B2000000" VerticalAlignment="Bottom">
    <TextBlock Text="{Binding MyProperty}" FontSize="25" />
    </Grid>
    </Grid>
    </DataTemplate>
    </GridView.ItemTemplate>
    </GridView>
    C#
    //ObservableCollection of class
    ObservableCollection<ImageCollection> img = new ObservableCollection<ImageCollection>();
    public MainPage()
    this.InitializeComponent();
    img.Add(new ImageCollection() { MyProperty = 1, Source = "ms-appx:///Assets/Logo.scale-100.png" });
    img.Add(new ImageCollection() { MyProperty = 2, Source = "ms-appx:///Assets/2.jpg" });
    img.Add(new ImageCollection() { MyProperty = 3, Source = "ms-appx:///Assets/3.jpg" });
    img.Add(new ImageCollection() { MyProperty = 4, Source = "ms-appx:///Assets/4.jpeg" });
    gd.ItemsSource = img;
    private void gd_Tapped(object sender, TappedRoutedEventArgs e)
    GridView gv = (GridView)sender;
    ImageCollection ic = gv.SelectedItem as ImageCollection;
    ic.Source = "ms-appx:///Assets/4.jpeg";
    gv.UpdateLayout();
    I have used  INotifyPropertyChanged now UI is not fluctuate 
    and I have not bind again O-Collection.
    I hope so You will get right answer. 
    shah

  • Create a trigger which set Image source with binding to a dependency property.

    I'm trying to create a specified button which switch images every time it pressed, without using the Click CBFunction, so I'm using toggle button and triggers (checked unchecked) and I want this button to
    supply DP of string so who ever uses is button will only have to specify the images paths and a click CBFuntion to
    perform what ever he wishes.
    I managed to create the mechanism for switching images with triggers(but the triggers image paths are hard coded and not using DP) and to enable setting a click CBFunction. When I switch the hard coded image path with a DP which return a string with
    the path the program crush, an exception is thrown.
    U.C xaml:
    <UserControl x:Class="ButtonChangeImage.UserControl1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    mc:Ignorable="d">
    <Grid>
    <ToggleButton x:Name="btnCI">
    <ToggleButton.Content >
    <Image Name="img" Source="C:\Users\AmitL\Desktop\joecocker.jpg"/>
    </ToggleButton.Content>
    <ToggleButton.Triggers>
    <EventTrigger RoutedEvent="ToggleButton.Checked">
    <EventTrigger.Actions>
    <BeginStoryboard>
    <Storyboard>
    <ObjectAnimationUsingKeyFrames Storyboard.Target="{x:Reference img}" Storyboard.TargetProperty="Source">
    <DiscreteObjectKeyFrame KeyTime="0:0:0">
    <DiscreteObjectKeyFrame.Value>
    <BitmapImage UriSource="{Binding FirstImage}"/>
    <!--<BitmapImage UriSource="C:\Users\AmitL\Desktop\james-brown-010.jpg"/>--><!--if I switch to this line it works fine!-->
    </DiscreteObjectKeyFrame.Value>
    </DiscreteObjectKeyFrame>
    </ObjectAnimationUsingKeyFrames>
    </Storyboard>
    </BeginStoryboard>
    </EventTrigger.Actions>
    </EventTrigger>
    <EventTrigger RoutedEvent="ToggleButton.Unchecked">
    <EventTrigger.Actions>
    <BeginStoryboard>
    <Storyboard>
    <ObjectAnimationUsingKeyFrames Storyboard.Target="{x:Reference img}" Storyboard.TargetProperty="Source">
    <DiscreteObjectKeyFrame KeyTime="0:0:0">
    <DiscreteObjectKeyFrame.Value>
    <BitmapImage UriSource="C:\Users\AmitL\Desktop\joecocker.jpg"/>
    </DiscreteObjectKeyFrame.Value>
    </DiscreteObjectKeyFrame>
    </ObjectAnimationUsingKeyFrames>
    </Storyboard>
    </BeginStoryboard>
    </EventTrigger.Actions>
    </EventTrigger>
    </ToggleButton.Triggers>
    </ToggleButton>
    </Grid>
    </UserControl>
    U.C cs:
    public partial class UserControl1 : UserControl
    public static readonly DependencyProperty FirstImageDP = DependencyProperty.Register("FirstImage", typeof(string), typeof(UserControl1), new PropertyMetadata(@"C:\Users\AmitL\Desktop\james-brown-010.jpg", new PropertyChangedCallback(FirstImageSource)));
    private string m_strFirstImage = string.Empty;
    private BitmapImage m_oBMImage = null;
    private static void FirstImageSource(DependencyObject obj, DependencyPropertyChangedEventArgs args)
    UserControl1 l_UCBtnSwitchImage = (UserControl1)obj;
    l_UCBtnSwitchImage.m_strFirstImage = (string)args.NewValue;
    l_UCBtnSwitchImage.m_oBMImage = new BitmapImage(new Uri(l_UCBtnSwitchImage.m_strFirstImage, UriKind.Absolute));
    public string FirstImage
    get
    string l_strTemp = (string)GetValue(FirstImageDP);
    return l_strTemp;
    set
    SetValue(FirstImageDP, value);
    public event RoutedEventHandler Click
    add { btnCI.Click += value; }
    remove { btnCI.Click -= value; }
    public UserControl1()
    InitializeComponent();
    window xaml:
    <Window x:Class="ButtonChangeImage.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:m="clr-namespace:ButtonChangeImage"
    Title="MainWindow" Height="350" Width="525">
    <Grid>
    <m:UserControl1 Click="ToggleButton_Checked" FirstImage="C:\Users\AmitL\Desktop\james-brown-010.jpg"></m:UserControl1>
    </Grid>
    </Window>
    The exception:
    A first chance exception of type 'System.Windows.Markup.XamlParseException' occurred in PresentationFramework.dll
    Additional information: 'Provide value on 'System.Windows.StaticResourceExtension' threw an exception.' Line number '20' and line position '46'.
    I would love to know why when I switch the hard coded value with DP it suddenly throw exception, how to fix it or if there is other way to achieve U.C with those demands.
    Thanks.

    Hey Magnus,
    Unfortunately I get the same result, the button is switching between the (Joe Cocker) image to blue button(normal pressed button look) how come the
    (Joe Cocker) image return I didn't set a trigger for unchecked so what make it change the content
    or the image source back to that image?
    And I can't debug (by the way what's happening there how come it doesn't stop in all those code lines?).
    I didn't make any changes here is all the code:
    U.C cs:
    namespace ButtonChangeImage
    public class ImageConverter : IValueConverter
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    string s = value as string;
    var source = new System.Windows.Media.Imaging.BitmapImage();
    source.BeginInit();
    source.UriSource = new Uri(s, UriKind.RelativeOrAbsolute);
    source.EndInit();
    return source;
    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    throw new NotImplementedException();
    public partial class UserControl1 : UserControl
    public static readonly DependencyProperty FirstImageDP = DependencyProperty.Register("FirstImage", typeof(string), typeof(UserControl1), new PropertyMetadata(@"C:\Users\AmitL\Desktop\james-brown-010.jpg", new PropertyChangedCallback(FirstImageSource)));
    private string m_strFirstImage = string.Empty;
    private BitmapImage m_oBMImage = null;
    private static void FirstImageSource(DependencyObject obj, DependencyPropertyChangedEventArgs args)
    UserControl1 l_UCBtnSwitchImage = (UserControl1)obj;
    l_UCBtnSwitchImage.m_strFirstImage = (string)args.NewValue;
    l_UCBtnSwitchImage.m_oBMImage = new BitmapImage(new Uri(l_UCBtnSwitchImage.m_strFirstImage, UriKind.Absolute));
    public string FirstImage
    get
    string l_strTemp = (string)GetValue(FirstImageDP);
    return l_strTemp;
    set
    SetValue(FirstImageDP, value);
    public event RoutedEventHandler Click
    add { btnCI.Click += value; }
    remove { btnCI.Click -= value; }
    public UserControl1()
    InitializeComponent();
    U.C xaml:
    <UserControl x:Class="ButtonChangeImage.UserControl1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    mc:Ignorable="d">
    <Grid>
    <ToggleButton x:Name="btnCI" xmlns:local="clr-namespace:ButtonChangeImage">
    <ToggleButton.Resources>
    <local:ImageConverter x:Key="conv" />
    </ToggleButton.Resources>
    <ToggleButton.Style>
    <Style TargetType="ToggleButton">
    <Setter Property="Content">
    <Setter.Value>
    <Image Name="img" Source="C:\Users\AmitL\Desktop\joecocker.jpg"/>
    </Setter.Value>
    </Setter>
    <Style.Triggers>
    <Trigger Property="IsChecked" Value="True">
    <Setter Property="Content">
    <Setter.Value>
    <Image Source="{Binding Path=FirstImage, Converter={StaticResource conv}}"/>
    </Setter.Value>
    </Setter>
    </Trigger>
    </Style.Triggers>
    </Style>
    </ToggleButton.Style>
    </ToggleButton>
    </Grid>
    </UserControl>
    Main Window cs:
    namespace ButtonChangeImage
    public partial class MainWindow : Window
    public MainWindow()
    InitializeComponent();
    private void ToggleButton_Checked(object sender, RoutedEventArgs e)
    MessageBox.Show("f");
    Main Window xaml:
    <Window x:Class="ButtonChangeImage.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:m="clr-namespace:ButtonChangeImage"
    Title="MainWindow" Height="350" Width="525">
    <Grid>
    <m:UserControl1 Click="ToggleButton_Checked" FirstImage="C:\Users\AmitL\Desktop\james-brown-010.jpg"></m:UserControl1>
    </Grid>
    </Window>
    Thanks,
    Amit.

Maybe you are looking for

  • Ongoing Broadband Issue - Any help would be much a...

    Hi, I have had an ongoing issue with broadband speed for the last few months. I have spent hours on the phone to BT but I am still not getting anywhere. Everytime I report a slow speed (as in IP Profile of 135 and download speed of ~ 80mbps) I am ass

  • Can a user to create a condition or exception in Bex Analyser ?

    Can a user to create a condition or exception in Bex Analyser in a similar way that a user can create a condition or exception in the Web? I am assuming there is not and they can only be displayed but I wanted to check. Can anyone confirm whether the

  • I have been working on this for seven hours straight.  And I am cranky.

    It is now 3am and I am in tears because I just wasted $240 on a piece of metal that may as well be a flipping coaster. I am running Vista Premium 64-bit. I've installed three different version of iTunes trying to resolve this problem. The only one I

  • Badi for me21n tcode

    Hi All, I have a requiremnet in ME21N Transaction. While creating a PO i want to validate  some values based on services tab in the items.I found one badi related to services but when i am putting a break-point its not getting triggered. BADI IS  - M

  • XMLSerialize and case statement

    Hi all, I try using case statement on select like that SELECT    xmlserialize(DOCUMENT       xmlroot(XMLELEMENT(kdpwdocument,XMLATTRIBUTES(                            'xxxxxxxx' AS sndr,                            'xxxxxxxx' AS rcvr,