Tag Archives: เก็บ Windows

ง่าย และรวดเร็ว: กำหนดขนาดของสินค้า a ในกล่องรายการในเก็บ Windows App

ในการ Windows เก็บ App ที่ผมกำลังสร้าง, ต้องการแสดงผู้ใช้ข้อต่าง ๆ  เลือกกล่องรายการเป็นเครื่องมือในการแสดงเพื่อให้พวกเขาสามารถเลื่อนผ่านสิ่งที่ดี และพวกเขา 

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

        ส่วนตัว โมฆะ AddGameStateLogMessage(สายอักขระ theMessage)
        {
            กล่องข้อความ t = ใหม่ กล่องข้อความ();
            t.Text = GameStateCounter    + ": " + theMessage;
            t.TextWrapping = TextWrapping.Wrap;
            t.MinWidth = 400;
            ความหนา thisPadding = ใหม่ ความหนา(5, 0, 5, 0);
            t.Padding = thisPadding;
            t.FontSize = 12;

            ลิ ListBoxItem = ใหม่ ListBoxItem();
            liเนื้อหา = t;
            liMaxHeight = 25;
            thisPadding = ใหม่ ความหนา(5, 0, 5, 0);
            liเซลล์ = thisPadding;

            GameStateLog.Items.Insert(0,li);
        }

ในข้างต้น, ฉันสร้างกล่องข้อความ และตั้งค่าแบบอักษร, ระยะห่างของ, ฯลฯ.

ถัดไป, ผมสร้าง ListBoxItem การ และกำหนดเนื้อหาของกล่องข้อความจัดรูปแบบ.

ขั้นตอนสุดท้าย, ผมใส่ ListBoxItem ลงในกล่อง  (ต้องการแสดงข้อความล่าสุดที่ด้านบนของรายการ, ดังนั้นการแทรก(0,li) แทนที่จะเพิ่มเรื่อง() เรียก).

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

</สิ้นสุด>

undefinedสมัครสมาชิกไปยังบล็อกของฉัน.

ทำตามฉันใน Twitter ที่ http://www.twitter.com/pagalvin

ตั้งความสูงของ ListboxItems ใน ListBox โดยทางโปรแกรมสำหรับ Windows ที่เก็บ App

ฉันทำงานบนโปรแกรมประยุกต์ที่เก็บ windows และหนึ่งในสิ่งที่อยากทำใน app จะแสดงแฟ้มบันทึกที่แสดงข้อความสถานะและ tidbits อื่น ๆ ให้ข้อมูลเป็นผู้ทำกิจกรรม. เพื่อการนี้, เพิ่มกล่องรายการดังนี้:

<กล่อง x:ชื่อ ="GameStateLog" HorizontalAlignment ="ศูนย์" ความสูง ="221" VerticalAlignment ="ด้านบน" ความกว้าง ="499" เซลล์ ="0" FontSize ="10">

 

รหัส C# เพื่อสร้างกล่องรายการที่ใช้งานจริงได้พร้อม:

GameStateLog.Items.Insert(0, GameStateCounter    + ": สถานะเกมใหม่: รอเล่น 1 ชื่อ");

นี้ทำงานออกมาละเอียดพอ แต่ UI แสดงจำนวนระยะห่างสถานแต่ละข้อความบ้ามีเพิ่ม. ที่เข้าใจ ถ้าฉันต้องผู้ใช้สามารถเลือกรายการเหล่านี้ไม่ถูกต้องเมื่อฉันต้องการแสดงข้อความบันทึกชุดทำงาน-ผู้ใช้จะไม่เลือกเหล่านี้, เพียงแค่ดูพวกเขา. มันแพงกว่ายากหาวิธีง่าย ๆ นี้ และว่า, วิธีผมพบว่ามันไม่จำเป็นต้อง "ง่าย" แต่ผมก็ทำงานตกลง. เข้าใจหลักมาจากการลงรายการบัญชีนี้ ที่นี่ (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) จาก Bob Relyea. แทนการเพิ่มสายอักขระเพื่อเก็บสินค้าบนกล่อง, เพิ่ม ListBoxItems. โดยการเพิ่มสายอักขระ, กล่องสร้าง ListBoxItem ของตนเองนั้น. ฉันไม่สามารถที่จะส่งผลกระทบต่ออะไรเกี่ยวกับ ListBoxItem ที่หลังจากข้อเท็จจริง. รหัสใหม่:

        ส่วนตัว โมฆะ AddGameStateLogMessage(สายอักขระ theMessage)
        {
            ลิ ListBoxItem = ใหม่ ListBoxItem();
            liเนื้อหา = theMessage;
            liMaxHeight = 25;

            ความหนา thisPadding = ใหม่ ความหนา(5, 0, 5, 0);
            liเซลล์ = thisPadding;

            GameStateLog.Items.Insert(0,li);
        }

 

นี่ฉันกำลังสร้างของ ListBoxItem และใส่พวกเขา. ผมเอาระยะห่างส่วนเกิน โดยการกำหนดความหนาของ.

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

หวังนี้ช่วยคน!

</สิ้นสุด>

undefinedสมัครสมาชิกไปยังบล็อกของฉัน.

ทำตามฉันใน Twitter ที่ http://www.twitter.com/pagalvin