मैं कई जीयूआई नियंत्रण तत्वों जिनमें से कुछ माउस बातचीत (mouseenter, mouseleave) पर ही कार्रवाई (कोड-पीछे समारोह कॉल) उत्पन्न करने वाले हैं की है।
[संपादित करें] मैं अपने ईवेंट हैंडलर में कुछ गैर स्टाइल से संबंधित कार्यक्षमता कर रहा हूं।
घटना अभी मैं उपयोग कर रहा हूँ प्रत्येक नियंत्रण में जिम्मेदार बताते हैं:एक शैली के माध्यम से एक घटना समारोह कैसे सेट करें?
<Button Name="Button" Content="Button 1"
MouseEnter="GeneralMouseEnter" MouseLeave="GeneralMouseLeave"
PreviewMouseDown="Button1_PreviewMouseDown" PreviewMouseUp="Button1_PreviewMouseUp" />
<Button Name="NotInteractingButton" Content="Button 2"
/><!-- this button has no MouseOver-effects -->
<ToggleButton Content="ToggleButton"
MouseEnter="GeneralMouseEnter" MouseLeave="GeneralMouseLeave" />
<!-- needs to use IsMouseDirectlyOver on the slider knob... -->
<Slider Name="HorizontalSlider"
MouseEnter="GeneralMouseEnter" MouseLeave="GeneralMouseLeave"
ValueChanged="Slider_ValueChanged" />
<Slider Name="VerticalSlider" Orientation="Vertical"
MouseEnter="GeneralMouseEnter" MouseLeave="GeneralMouseLeave"
ValueChanged="Slider_ValueChanged" />
इस उदाहरण में कई नियंत्रण के बाद से ही दो कार्यों "GeneralMouseEnter" और "GeneralMouseLeave" बुला रहे हैं, मैं करने में सक्षम होना चाहते हैं उस शैली को परिभाषित करने के समान शैली या कुछ परिभाषित करें।
[संपादित करें - स्पष्टीकरण]
यह बाद में प्लगइन का एक प्रकार बनना माना जाता है।
(किसी भी जीयूआई कार्यक्रम के लिए कोड और XAML फ़ाइलों को शामिल करें और प्रत्येक इंटरैक्टिव नियंत्रण तत्व ... पर एक शैली सेट)
मैं वेब पर क्या मिला से, मैं इस उदाहरण की तरह EventTriggers
उपयोग कर सकते हैं:
<Style.Triggers>
<EventTrigger RoutedEvent="Click">
<EventTrigger.Actions>
<BeginAction TargetName="SomeAction" />
</EventTrigger.Actions>
</EventTrigger>
</Style.Triggers>
मैं नहीं जानता कि हालांकि अगर और कैसे एक कार्रवाई के भीतर कार्यों कॉल करने के लिए है।
- क्या प्रत्येक कार्यक्षमता पर कार्रवाई करने के लिए कार्रवाई + ट्रिगर के साथ शैली बनाकर यह कार्यक्षमता प्राप्त करना संभव है? उसको कैसे करे?
- मैं एक से अधिक शैलियों (एकाधिक इंटरैक्शन ईवेंट के लिए) को एक नियंत्रण में कैसे आवंटित करूं?
- क्या इस व्यवहार को प्राप्त करने के लिए शायद एक क्लीनर तरीका भी हो सकता है?
- [संपादित करें]
यदि मैं कहना चाहता हूं, तो मेरे जीयूआई में सभी स्लाइडर्स पर माउस परस्पर संपर्क करें?
ग्रेट, यह वही है जो मैं खोज रहा था - खासकर 'आधारितऑन = "..." 'के साथ संयोजन में। –