2010-04-05 11 views
6

में यूआई एलिमेंट के रोटेशन वैल्यू को कैसे प्राप्त करें मैंने यह पता लगाया है कि रोटेशन वैल्यू (element.RenderTransform = new RotateTransform (x)) कैसे असाइन करें, लेकिन मैं तत्व के रोटेशन वैल्यू को कैसे प्राप्त करूं?डब्ल्यूपीएफ

उदाहरण के लिए, यदि मैं एक ui तत्व बनाना चाहता हूं तो एक और रोटेशन कोण एक और ui तत्व के रूप में है, तो मैं यह कैसे करूँगा?

उत्तर

15

आप ऐसा करके रोटेशन मूल्य प्राप्त कर सकते हैं:

element2.RenderTransform = element.RenderTransform; 
3

आप:

RotateTransform rotation = element.RenderTransform as RotateTransform; 
if (rotation != null) // Make sure the transform is actually a RotateTransform 
{ 
    double rotationInDegrees = rotation.Angle; 
    // Do something with the rotationInDegrees here, if needed... 
} 

आप सिर्फ एक UIElement बनाना चाहते हैं उसी तरह से बारी बारी से, तो आप सिर्फ एक ही बदलने असाइन कर सकते हैं RotateTransform नाम कर सकते हैं और फिर इसके गुणों से बांध सकते हैं। उदाहरण के लिए, अपने 'मुख्य' ui तत्व में, आप के रूप में इतना बदलने को परिभाषित:

<TextBlock Text="MainBox"> 
    <TextBlock.RenderTransform> 
    <RotateTransform Angle="20" 
        CenterX="50" 
        CenterY="50" 
        x:Name="m"/> 
    </TextBlock.RenderTransform> 
</TextBlock> 

तो फिर तुम कि करने के लिए बाध्य कर सकते हैं एक और तत्व से परिणत:

<TextBlock Text="SecondBox"> 
    <TextBlock.RenderTransform> 
    <RotateTransform Angle="{Binding Angle, ElementName=m}" 
        CenterX="{Binding CenterX, ElementName=m}" 
        CenterY="{Binding CenterY, ElementName=m}"/> 
    </TextBlock.RenderTransform> 
</TextBlock>