2010-10-25 5 views
0

Comment puis-je changer une source d'image en continu par des codes xaml ??Modifier la source de l'image par le code xaml?

+0

"en continu"? Que voulez-vous dire ? –

+0

Je veux remplacer 2 images après une autre, je veux dire que je veux montrer 1.jpg, après une seconde, 2.jpg et répétez encore et encore – Bahar

Répondre

1

en cas de sur place:

<Image Source="smiley_stackpanel.png" Stretch="Fill"/> 

si dans le style:

<Style TargetType="Image"> 
    <Setter Property="Source" Value="c:\asd.jpg" /> 
</Style> 
0

Ceci est la plupart du temps de la mémoire, donc il peut y avoir un petit bug, mais au fond, vous aurez envie de mettre en deux images, et animer leurs valeurs Opacité:

<Grid> 

    <Image x:Name="imgOne" Source="image1.png"> 
     <Image.Triggers> 
      <EventTrigger RoutedEvent="Image.Loaded"> 
       <BeginStoryboard> 
        <Storyboard> 
         <DoubleAnimation 
          Storyboard.TargetName="imgOne" 
          Storyboard.TargetProperty="(Image.Opacity)" 
          To="0" 
          Duration="0:0:1" 
          AutoReverse="True"         
          RepeatBehavior="Forever" /> 
        </Storyboard> 
       </BeginStoryboard> 
      </EventTrigger> 
     </Image.Triggers>  
    </Image> 
    <Image x:Name="imgTwo" Source="image1.png" Opacity="0"> 
     <Image.Triggers> 
      <EventTrigger RoutedEvent="Image.Loaded"> 
       <BeginStoryboard> 
        <Storyboard> 
         <DoubleAnimation 
          Storyboard.TargetName="imgTwo" 
          Storyboard.TargetProperty="(Image.Opacity)" 
          To="1" 
          Duration="0:0:1" 
          AutoReverse="True"         
          RepeatBehavior="Forever" /> 
        </Storyboard> 
       </BeginStoryboard> 
      </EventTrigger> 
     </Image.Triggers>  
    </Image> 


</Grid> 

à proprement parler, vous avez probablement pas besoin de la première animation un moins la deuxième image a des zones transparentes ou ne couvre pas entièrement la première.

Aussi, YMMV - ce sera un peu un mangeur de ressources, car il se passe si vite et souvent.

Questions connexes