मैं इस XAML करने की कोशिश की:WPF: स्लाइडर उठाना नहीं करता है MouseLeftButtonDown या MouseLeftButtonUp
<Slider Width="250" Height="25" Minimum="0" Maximum="1" MouseLeftButtonDown="slider_MouseLeftButtonDown" MouseLeftButtonUp="slider_MouseLeftButtonUp" />
और यह सी #:
private void slider_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
sliderMouseDown = true;
}
private void slider_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
sliderMouseDown = false;
}
sliderMouseDown चर कभी नहीं बदलता क्योंकि MouseLeftButtonDown और MouseLeftButtonUp घटनाओं उठाया कभी नहीं कर रहे हैं। मैं इस कोड को काम करने के लिए कैसे प्राप्त कर सकता हूं जब उपयोगकर्ता के पास बाएं मान बटन को सही करने के लिए स्लाइडर पर बाएं माउस बटन नीचे होता है, और जब माउस ऊपर होता है, तो बूल गलत पर सेट होता है?
धन्यवाद, मैं IsMouseCapturedWithinChanged ईवेंट का उपयोग अपने अंतिम लक्ष्य को पूरा करने के लिए previewMouseLeftButtonUp ईवेंट के साथ संयोजन में करने में सक्षम था। – Nick
क्या कोई इस व्यवहार के लिए तर्क को जानता है? – PeterAllenWebb
इस व्यवहार का कारण यह है कि बटन माउसडाउन ईवेंट को संभालता है। डिफ़ॉल्ट रूप से यदि कोई नियंत्रण कहता है कि उन्होंने एक ईवेंट संभाला है, तो किसी और को अधिसूचना नहीं मिल जाती है जब तक कि उन्होंने निर्दिष्ट नहीं किया है कि वे हैंडल की घटनाओं को भी देखना चाहते हैं। –