คำถามติดแท็ก tablelayoutpanel

8
Winforms TableLayoutPanel เพิ่มแถวโดยทางโปรแกรม
ฉันต่อสู้กับสิ่งนี้มาระยะหนึ่งแล้วและพบว่ามีคนอีกจำนวนมากที่ต่อสู้กับ TableLayoutPanel (.net 2.0 Winforms) เช่นกัน ปัญหา ฉันกำลังพยายามใช้ tablelayoutpanel 'ว่าง' ซึ่งมีการกำหนด 10 คอลัมน์จากนั้นในรันไทม์เพิ่มแถวของตัวควบคุมโดยใช้โปรแกรม (เช่นหนึ่งตัวควบคุมต่อเซลล์) อาจมีคนคิดว่ามันควรจะเรียบง่ายเหมือน myTableLayoutPanel.Controls.Add(myControl, 0 /* Column Index */, 0 /* Row index */); แต่นั่น (สำหรับฉัน) ไม่ได้เพิ่มแถว ดังนั้นอาจจะเพิ่มในลักษณะแถว myTableLayoutPanel.RowStyles.Clear(); myTableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.Absolute, 30F)); แต่ก็ไม่ได้ผลเช่นกัน ฉันได้ขุดคุ้ยและพบว่าการmyTableLayoutPanel.RowCountใช้งานเปลี่ยนไปจากเวลาออกแบบเป็นเวลาทำงานดังนั้นการทำจึงmyTableLayoutPanel.RowCount++;ไม่ได้เพิ่มแถวอื่นแม้แต่ก่อน / หลังเพิ่มรายการ RowStyle สำหรับมัน! ปัญหาที่เกี่ยวข้องอีกประการหนึ่งที่ฉันพบคือการควบคุมจะถูกเพิ่มลงในจอแสดงผล แต่พวกเขาทั้งหมดจะแสดงผลที่จุด 0,0 ของ TableLayoutPanel นอกจากนี้ยังไม่ได้ถูก จำกัด ให้อยู่ในขอบเขตของเซลล์ที่ควรจะเป็น แสดงอยู่ภายใน (เช่นกับ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.