WPF: स्टाइल किए गए सूची बॉक्स में केंद्रित आइटम के आसपास बिंदीदार सीमा को हटा दें


84

मेरे पास एक कस्टम कंट्रोलआईमप्लेट के साथ एक क्षैतिज सूची बॉक्स है। ध्यान केंद्रित करने पर चयनित आइटम को एक बिंदीदार फ़्रेम मिलता है। किसी को पता है कि यह कैसे छुटकारा पाने के लिए?

जवाबों:


164

आपको प्रत्येक ListBoxItem के FocusVisualStyle को शून्य करने की आवश्यकता है। कदम बलो हैं

1) ListBox के लिए ItemContainerStyle बनाएं

<Style x:Key="ListBoxItemStyle1" TargetType="{x:Type ListBoxItem}"> 
   <Setter Property="FocusVisualStyle" Value="{x:Null}"/> ....

2) उस शैली को Listbox पर सेट करें

<ListBox ItemContainerStyle="{DynamicResource ListBoxItemStyle1}"

5
यह उत्तर बहुत अच्छा काम करता है, लेकिन यहाँ पर बहुत बड़े सिर हैं: यदि आप इस विधि का उपयोग करते हैं, तो आपके नियंत्रण में कोई भी संकेतक प्रदर्शित नहीं होगा, जो विंडोज 8 में केंद्रित है! FocusVisualStyleविंडोज 7 में विकलांगों के साथ , बटन जैसे नियंत्रण अभी भी एक नीले रंग के समग्र आकर्षण को बनाए रखते हैं, लेकिन विंडोज 8 में यह बताना पूरी तरह से असंभव है कि किसी समूह में कौन सा नियंत्रण केंद्रित है।
इवान वोंद्रसेक

जानकार अच्छा लगा। इस मामले में लक्ष्य एक सूची आइटम के लिए दृश्य शैली को हटाने के लिए था जिसमें अधिक नियंत्रण शामिल थे। बाल नियंत्रण अभी भी अपनी फोकस शैली बरकरार रहेगा।
8
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.