I’m working on a windows store application and one of the things I want to do in the app is display a log that shows status messages and other informational tidbits as the user works things. এই শেষ, আমি একটি ListBox নিম্নরূপ এখনো যোগ করেনি:
<ListBox এক্স:= নাম"GameStateLog" = HorizontalAlignment"কেন্দ্র" উচ্চতা ="221" = VerticalAlignment"শীর্ষ" প্রস্থ ="499" প্যাডিং ="0" = FontSize"10">
রানটাইমে listbox পূরণ সি # কোড লাইন বরাবর ছিল:
GameStateLog.Items.Insert(0, GameStateCounter + ": এক্সপ্লোর পরিচালনা খেলা রাষ্ট্র: প্লেয়ারের জন্য অপেক্ষা 1 নাম");
This worked out fine enough but the UI showed a crazy amount of padding around the individual messages as they were added. আমি অন্তিম ব্যবহারকারীদের এই আইটেম নির্বাচন করতে কিন্তু আমি লগ বার্তাগুলির একটি চলমান সিরিজের দেখাতে চান যখন অর্থে দেখা যায় না সক্ষম হতে চান, যদি যে অর্থে তোলে - ব্যবহারকারীদের এই নির্বাচন হবে না, just view them. এটা তর্কসাপেক্ষ এই কাজ করার জন্য একটি সহজ উপায় খুঁজে বের করতে অদ্ভুত কঠিন ছিল, the way I found it isn’t necessarily “easy” but I got it working OK. কী অন্তর্দৃষ্টি এই পোস্ট থেকে এসেছেন এখানে (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) from Bob Relyea. পরিবর্তে ListBox আইটেম সংগ্রহে স্ট্রিং যোগ করা, add ListBoxItems. একটি পংক্তি যোগ করে, the ListBox was creating its own ListBoxItem on its own. I wasn’t able to affect anything about that ListBoxItem after the fact. এক্সপ্লোর কোড:
ব্যক্তিগত অনধিকৃত AddGameStateLogMessage(স্ট্রিং theMessage) { ListBoxItem যে = নতুন ListBoxItem(); li.Content = theMessage; li.MaxHeight = 25; বেধ = thisPadding নতুন বেধ(5, 0, 5, 0); = thisPadding li.Padding; GameStateLog.Items.Insert(0,চীনদেশে প্রচলিত দূরত্বের একক); }
Here I’m creating ListBoxItem’s and inserting them. আমি তার বেধ সেটিং দ্বারা অতিরিক্ত প্যাডিং মুছে ফেলা.
আমি বার্তা বিশেষ ধরনের উজ্জ্বল কোডিং কিছু রঙ করবেন এবং সরাসরি ListBoxItems যোগ করে আমি শৈলী তাদের আমি চাই কোনো ভাবে পেতে মনস্থ হিসেবে এটা বেশ নমনীয়.
এই কেউ সাহায্য Hope!
</শেষ>
আমার ব্লগ এর জন্য সাবস্ক্রাইব করুন.
টুইটারে আমার অনুসরণ http://www.twitter.com/pagalvin