ฉันกำลังพยายามเพิ่มสตริงในกล่องรายการใน Silverlight สำหรับ Windows Phone 7 ฉันต้องการให้สตริงปรากฏในคอลัมน์ที่มีความกว้างคงที่ และเพื่อให้กล่องรายการเลื่อนเข้าไปดูเมื่อมีการเริ่มแถวใหม่ในกล่องรายการ นอกจากนี้ หนึ่งคำจะถูกเพิ่มลงในกล่องรายการในแต่ละครั้งเมื่อผู้ใช้คลิกปุ่ม ฉันลองใช้ WrapPanel แต่นั่นไม่อนุญาตให้เลื่อนดู ตอนนี้โซลูชันปัจจุบันของฉันใช้ได้ แต่ตัวดำเนินการดัชนีให้ข้อผิดพลาดดัชนีอยู่นอกขอบเขตแก่ฉัน และวิธีการแทรกทำให้ฉันมีรายการที่ซ้ำกันซึ่งปรากฏในแถวถัดไปด้านล่าง...
ฉันกำลังพยายามใช้วิธี Insert หรือตัวดำเนินการดัชนี (ไม่ใช่ทั้งสองอย่าง) ดังนี้:
this.wordListBox.Items.Insert(numRows, formatRow);
this.wordListBox.Items[numRows] = formatRow;
นี่คือแนวคิดเกี่ยวกับโฟลว์ของโปรแกรมของฉัน ตัวอย่าง: ผู้ใช้คลิกปุ่มและ Word ถูกต่อเข้ากับ formatRow ที่เป็นโมฆะในปัจจุบัน และ formatRow จะถูกเพิ่มลงใน wordListBox ที่ numRows ซึ่งปัจจุบันเป็น 0 ปุ่มจะถูกคลิกอีกครั้งและมีคำอื่น ถูกต่อเข้ากับ formatRow และ formatRow จะถูกเพิ่มใน wordListBox ที่ numRows ซึ่งยังคงเป็น 0 ดังนั้น ตอนนี้ฉันมีองค์ประกอบแรกของ wordListBox ที่ตั้งค่าเป็นสตริงที่มีคำสองคำ ซึ่งจะทำซ้ำจนกว่าจะเพิ่มคำ 5 คำลงใน formatRow จากนั้น numRows จะเพิ่มขึ้น และ formatRow ถูกตั้งค่าเป็น null ตอนนี้ คำต่างๆ จะถูกเพิ่มลงในแถวถัดไปใน wordListBox และ wordListBox จะเลื่อนเข้ามาดู เนื่องจากแต่ละองค์ประกอบของ ListBox จะเป็นหนึ่งสตริง
ใครสามารถชี้ให้เห็นข้อผิดพลาดของฉันด้วยวิธีแทรกของตัวดำเนินการดัชนีหรือแสดงวิธีทำให้ฟังก์ชันเหล่านี้ทำงานตามวัตถุประสงค์ของฉันได้หรือไม่ นอกจากนี้หากใครต้องการคำอธิบายที่ดีกว่านี้ ฉันจะพยายามอธิบายให้ละเอียดยิ่งขึ้น