Tag Archives: Windows Store

Tez və asan: Windows Store App bir siyahısı Box bir maddələrin ölçüsünü

Mən yaradılması alıram Windows Store App, Mən istifadəçi müxtəlif informasiya mesajları göstərmək istəyirəm.  Onları və bütün yaxşı heyəti vasitəsilə hərəkət edə bilər ki alət onu göstərmək kimi bir ListBox seçilmiş. 

Bu mesaj yalnız informasiya var, belə istifadəçi şey üçün seçin heç vaxt, çünki onların ətrafında bütün əlavə ağ təmin etmək üçün heç bir ehtiyac yoxdur.  The ListBox-u mənim davranış padding böyük məbləğdə təmin edir və bunu qurtarmaq istədi.  Yaxşı .... birbaşa ListBox dair şey ki Sıralama edə bilməz.  Lakin, siz əlavə maddələr üçün bunu edə bilərsiniz:

        xüsusi ləğv AddGameStateLogMessage(sim theMessage)
        {
            Mətn t = yeni Mətn();
            t.Text = GameStateCounter     + ": " + theMessage;
            = TextWrapping.Wrap t.TextWrapping;
            t.MinWidth = 400;
            Qalınlığı = thisPadding yeni Qalınlıq(5, 0, 5, 0);
            = thisPadding t.Padding;
            = t.FontSize 12;

            ListBoxItem ki = yeni ListBoxItem();
            li.Content = t;
            li.MaxHeight = 25;
            = thisPadding yeni Qalınlıq(5, 0, 5, 0);
            = thisPadding li.Padding;

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

yuxarıda, Mən bir mətn yaratmaq və onun font qəbulu alıram, onun padding, və s..

Sonrakı, Mən ListBoxItem yaratmaq və biçimlendirilmiş mətn onun məzmununun müəyyən.

Nəhayət, Mən ListBox daxil ListBoxItem daxil edin.  (Mən siyahının başında ən son mesaj göstərmək istəyirəm, səbəbdən Daxil(0,li) əvəzinə sadə əlavə et və() sehr.).

Mən ListBox davranış, lakin çox səmərəli olmuşdur yuxarıda göstərilən model ilə həqiqətən sevindim əvvəl Mən bu bir az tweaking olacaq.  İnşallah başqasına faydalı hesab.

</son>

undefinedBlog abunə.

Da Twitter məni izləyin http://www.twitter.com/pagalvin

Windows Store App üçün program ListBox ildə ListboxItems hündürlüyü qurulması

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. Bu məqsədlə, Mən ListBox aşağıdakı kimi əlavə:

<ListBox x:= Adlandırın"GameStateLog" = HorizontalAlignment"Mərkəz" Height ="221" = VerticalAlignment"Yuxarı" Width ="499" Padding ="0" = Yazı tipi ölçüsü"10">

 

Zamanı da listbox yaşayır üçün C # kodu xətt idi:

GameStateLog.Items.Insert(0, GameStateCounter     + ": Yeni oyun dövlət: Oyunçu üçün gözləyir 1 ad");

This worked out fine enough but the UI showed a crazy amount of padding around the individual messages as they were added. Mən son istifadəçilər bu öğeleri seçin, lakin mən yalnız günlük mesaj çalışan sıra göstərmək istəyirəm zaman mənada etmir etmək istəyirəm, əgər anlamlı - Indi bu seçin deyil, just view them. Bu arguably Bunu etmək üçün asan yol tapmaq üçün qəribə çətin idi və, the way I found it isn’t necessarily “easy” but I got it working OK. Əsas fikir bu poçt gəldi burada (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) from Bob Relyea. Əvəzinə ListBox öğeleri toplanması strings əlavə, add ListBoxItems. Bir simli əlavə, the ListBox was creating its own ListBoxItem on its own. I wasn’t able to affect anything about that ListBoxItem after the fact. Yeni kodu edir:

        xüsusi ləğv AddGameStateLogMessage(sim theMessage)
        {
            ListBoxItem ki = yeni ListBoxItem();
            li.Content = theMessage;
            li.MaxHeight = 25;

            Qalınlığı = thisPadding yeni Qalınlıq(5, 0, 5, 0);
            = thisPadding li.Padding;

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

 

Here I’m creating ListBoxItem’s and inserting them. Mən onun qalınlığı ayarlayarak artıq padding çıxarılıb.

Mən mesaj xüsusi növ vurğulamaq üçün kodlaşdırma bir rəng etmək və birbaşa ListBoxItems əlavə I stil onlara istəyirəm hər hansı bir şəkildə almaq istəyirlər Bu olduqca çevik edir.

Bu kimsə kömək ümid edirik!

</son>

undefinedBlog abunə.

Da Twitter məni izləyin http://www.twitter.com/pagalvin