.net - Programatically WPF Fade In (via extension methods) -


मैं एक साधारण (अकेले खड़े) सी # एक्सटेंशन विधि को एक सामान्य WPF UIElement के फेड-इन में लिखने की कोशिश कर रहा हूं , लेकिन समाधान (और कोड नमूने) जो मैंने पाया था जिसमें बड़ी संख्या में चलती हिस्से होते हैं (जैसे कि एक कहानी आदि की स्थापना करना ...)

यहां संदर्भ के लिए एपीआई के प्रकार का एक उदाहरण है विधि मैं बनाना चाहूंगा यह कोड एक UIElement को प्रदान किए गए मानों (वैल्यू, टू वैल्यू, अवधि और लूप) के अनुसार घुमाएगा, जिसमें से , बूल लूप एनीमेशन): जहां टी: UIElement {रिटर्न (टी) uiElement.wpfInvoke (() = & gt; {डबल एनीमेशन डबल एनीमेशन = नया डबल एन्निमेशन (सेव्यू, टू वेल, नई अवधि (टाइमस्पेनफ्रॉस्सेकंड्स (अवधिइसीसेकंडे))) रोटेटट्रांसफ़ॉर्म रोटेटट्रांसफ़ॉर्म = नए रोटेट ट्रांसफॉर्मर (); UiElement.RenderTransform = rotateTransform; uiElement.RenderTransformOrigin = नई प्रणाली.विंडो.पॉइंट (0.5, 0.5); अगर (लूपएनिमेशन) डबलएनिमेशन। पुनरावृत्तिवर्णन = दोहराएंविवाहक। हमेशा के लिए; rotateTransform.BeginAnimation (RotateTransform.AngleProperty, doubleAnimation); वापसी uiElement ;}); }

लगता है जैसे आप कुछ इस तरह से ढूंढ रहे हैं:

< प्री> सार्वजनिक स्थिर टी फ़ेडइन & lt; T & gt; (यह टी uiElement, इंट अवधि इनसेकंड) {return uiElement.FadeFromTo (0, 1, अवधि इनसेकेन्ड, गलत); } सार्वजनिक स्थैतिक टी फ्रेडऑट & lt; T & gt; (यह टी ui एलेमेंट, इंट अवधि इनसेकंड) {वापसी uiElement.FadeFromTo (1, 0, अवधि इनसेकेन्ड, गलत); } सार्वजनिक स्थिर टी FadeFromTo & lt; T & gt; (यह टी uiElement, ओपन से दोगुनी, दोहरी से ऑपिसिटी, इंट अवधि, इन्सेंक, बूल लूप एनीमेशन) जहां टी: UIElement {रिटर्न (टी) uiElement.wpfInvoke (() = & gt; {var डबल एनीमेशन = नया डबल एनीमेशन सेओपिसिटी, टूओपिसिटी, नई अवधि (टाइमस्पेन.फॉर्मसेकंड्स (अवधिइसीसेकंड))); यदि (लूपएनिमेशन) डबल एनीमेशन। पुनरावृत्तिवर्णन = दोहराए जाने वाले। हमेशा के लिए; uiElement.BeginAnimation (UIElement.OpacityProperty, डबलएनिमेशन); वापसी uiElement;}); }

Comments

Popular posts from this blog

windows - Heroku throws SQLITE3 Read only exception -

lex - Building a lexical Analyzer in Java -

python - rename keys in a dictionary -