แสดงตัวแก้ไขเซลล์ตัวกรองใน RadGridView - Telerik สำหรับ WinForms เสมอ

ฉันใช้ RadGridView พื้นฐานเพื่อแสดงข้อมูลบางอย่างในแอปพลิเคชัน WinForms ฉันได้ตั้งค่า RadGridView เป็น EnableFiltering และนั่นก็ใช้งานได้ดี ฉันยังได้ตั้งค่า GridFilterCellElement เป็น Collapse ทั้งไอคอนตัวกรอง และข้อความเซลล์ตัวกรองที่ระบุว่า "มี:" และ "เท่ากับ:" ฯลฯ เซลล์ตัวกรองโดยพื้นฐานแล้วดูเหมือนเซลล์สีเทาว่างเปล่าในขณะนี้ จนกระทั่งหนึ่งในนั้นได้รับ โฟกัส... ณ เวลาที่ตัวแก้ไขที่เหมาะสมจะเติมเซลล์ ฉันกำลังตั้งค่าการเปิดเผยไอคอนตัวกรองและข้อความเซลล์ตัวกรองในตัวจัดการ ViewCellFormatting ของ RadGridView

สิ่งที่ฉันอยากรู้คือ ฉันจะสร้างตัวแก้ไขสำหรับเซลล์ตัวกรองทั้งแถวได้อย่างไร โดยแสดงเป็นค่าเริ่มต้น กล่าวอีกนัยหนึ่ง ฉันเพียงต้องการแสดงเครื่องมือแก้ไขในเซลล์ตัวกรองตลอดเวลา ดังนั้นจึงเห็นได้ชัดเจนว่าผู้ใช้สามารถกรองข้อมูลด้วยตัวควบคุมการแก้ไขด้านบนได้

ฉันคิดว่านี่จะเป็นเรื่องง่ายมาก แต่ก็พิสูจน์แล้วว่าค่อนข้างยุ่งยาก ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก.


person efischency    schedule 27.06.2016    source แหล่งที่มา


คำตอบ (1)


ฉันขอแนะนำให้ไม่ให้แสดงบรรณาธิการตลอดเวลา แม้ว่าข้อเท็จจริงจะไม่ใช่เรื่องเล็กน้อย แต่ก็มีเหตุผลที่บรรณาธิการจะต้องทำงานในแบบที่พวกเขาทำ

โดยพื้นฐานแล้วตัวแก้ไขประกอบด้วยการควบคุมบางอย่าง เช่น กล่องข้อความ รายการแบบเลื่อนลง ตัวเลือกวันที่ ฯลฯ การควบคุมดังที่เรารู้ว่าไม่ใช่วัตถุน้ำหนักเบา (การมีตัวควบคุมมากมายที่แสดงอยู่จะมีผลกระทบต่อประสิทธิภาพอย่างมาก) และมีข้อจำกัดบางประการ เช่น พวกเขาไม่รองรับการตัดภาพ

เนื่องจาก RadGridView ใช้การจำลองเสมือนสำหรับเซลล์ องค์ประกอบของเซลล์จึงถูกนำมาใช้ซ้ำในระหว่างการดำเนินการ เช่น การเลื่อน การกรอง ฯลฯ องค์ประกอบของเซลล์มีความยืดหยุ่นมากกว่ามากและเอาชนะข้อจำกัดที่ส่วนควบคุมแนะนำ และยังเป็นองค์ประกอบที่มีน้ำหนักเบา ซึ่งต่างจากส่วนควบคุมที่ให้ ประสิทธิภาพที่ยอดเยี่ยม ดังนั้นตารางจึงสามารถแสดงข้อมูลได้มากมาย

ฉันหวังว่าฉันจะสามารถอธิบายได้ว่าทำไมฉันไม่คิดว่านี่เป็นความคิดที่ดี

องค์ประกอบต่างๆ เช่น ไอคอนและข้อความที่คุณซ่อนไว้ จะแสดงให้ผู้ใช้เห็นว่านี่คือเซลล์กรอง

หากคุณต้องการป้อนข้อมูลที่เร็วขึ้น คุณอาจเปิดโปรแกรมแก้ไขได้โดยอัตโนมัติ (โดยใช้วิธี CurrentCellChanged และ BEginEdit) เมื่อผู้ใช้คลิก

person checho    schedule 28.06.2016