2010-04-12 14 views
5

मैं इस का उपयोग कर ग्रिड की चौड़ाई/ऊंचाई को बदलने में सक्षम हूँ, तो क्यों यह काम नहीं करेगा जब मैं का उपयोग करें (Grid.RenderTransform) जैसे .TranslateTransform.X:मेरा डब्ल्यूपीएफ एक्सएएमएल ग्रिड अनुवादट्रांसफॉर्म.एक्स क्यों नहीं होगा?

<Window.Triggers> 
<EventTrigger RoutedEvent="Button.Click" SourceName="button"> 
    <BeginStoryboard> 
    <Storyboard> 
     <DoubleAnimation 
     Storyboard.TargetProperty="(Grid.RenderTransform).(TranslateTransform.X)" 
     From="0" To="200" Storyboard.TargetName="grid" Duration="0:0:2" 
     /> 
    </Storyboard> 
    </BeginStoryboard> 
</EventTrigger> 
</Window.Triggers> 

आवेदन भार आदि, लेकिन बटन क्लिक होने पर कुछ भी नहीं होता है।

<Grid x:Name="grid" Height="714" Canvas.Left="240" Canvas.Top="8" Width="360" RenderTransformOrigin="0.5,0.5"> 
     <Grid.Background> 
      <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> 
      <GradientStop Color="Black" Offset="0"/> 
      <GradientStop Color="White" Offset="1"/> 
      </LinearGradientBrush> 
     </Grid.Background> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="0*"/> 
      <ColumnDefinition/> 
     </Grid.ColumnDefinitions> 
    </Grid> 

ध्यान दें कि मैं कई अलग अलग Canvas.Left मूल्यों की कोशिश की है कोई लाभ नहीं हुआ,:

यहाँ मेरी ग्रिड के लिए XAML है।

उत्तर

11

आप ग्रिड के लिए RenderTransform के रूप में एक TranslateTransform वस्तु को परिभाषित करने से पहले आप अपने मूल्यों को बदल सकते है:

<Grid x:Name="grid" ... > 
    <Grid.RenderTransform> 
     <TranslateTransform X="0" Y="0" /> 
    </Grid.RenderTransform> 
    <!-- ... --> 
</Grid> 

मुझे आशा है कि यह इस तरह से काम करता है। सौभाग्य!

संबंधित मुद्दे