WPF: ลบเส้นประรอบรายการที่โฟกัสในกล่องรายการสไตล์


85

ฉันมีกล่องรายการแนวนอนที่มี controlIemplate แบบกำหนดเอง รายการที่เลือกจะได้รับกรอบจุดเมื่อโฟกัส ใครรู้วิธีกำจัดมัน

คำตอบ:


165

คุณต้องตั้งค่า FocusVisualStyle ของ ListBoxItem แต่ละรายการเป็น null ขั้นตอนจะร้อง

1) สร้าง ItemContainerStyle สำหรับ ListBox

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

2) ตั้งค่าลักษณะนั้นเป็น Listbox

<ListBox ItemContainerStyle="{DynamicResource ListBoxItemStyle1}"

5
คำตอบนี้ใช้งานได้ดี แต่โปรดทราบมาก: หากคุณใช้วิธีนี้การควบคุมของคุณจะไม่แสดงตัวบ่งชี้ใด ๆ ที่เน้นใน Windows 8! เมื่อFocusVisualStyleปิดการใช้งานใน Windows 7 การควบคุมเช่นปุ่มยังคงมีการเน้นสีฟ้าโดยรวม แต่ใน Windows 8 เป็นไปไม่ได้เลยที่จะบอกว่าการควบคุมใดในกลุ่มนั้นเน้น
Evan Wondrasek

ดีแล้วที่รู้. ในกรณีนี้เป้าหมายคือการลบสไตล์ภาพสำหรับรายการที่มีการควบคุมเพิ่มเติม ส่วนควบคุมเด็กจะยังคงมีรูปแบบการโฟกัสเหมือนเดิม
Vegar

คุณยังสามารถเพิ่มได้FocusVisualStyle="{x:Null}"ในกรณีส่วนใหญ่
Adephx
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.