Tag Archives: Windows Store

Rýchle a jednoduché: Nastaviť veľkosť položiek v zozname v predajni Windows Store App

V Windows Store App vytváram, Chcem ukázať užívateľovi rôzne informačné správy.  Zdvihol som ListBox ako nástroj najavo tak, že môžete prechádzať ich a všetky dobré veci. 

Správy sú len informatívne, Takže nie je potrebné poskytovať všetky, ktoré extra prázdne okolo nich, pretože používateľ môže nikdy vybrať pre čokoľvek.  Predvolené správanie ListBox poskytuje značné množstvo polstrovanie a chcel sa toho zbaviť.  No.... nemôžete urobiť niečo takého na ListBox priamo.  AVŠAK, Môžete to urobiť na položky pridať:

        súkromné neplatné AddGameStateLogMessage(reťazec theMessage)
        {
            TextBox t = nové TextBox();
            t.Text = GameStateCounter    + ": " + theMessage;
            t.TextWrapping = TextWrapping.Wrap;
            t.MinWidth = 400;
            Hrúbka thisPadding = nové Hrúbka(5, 0, 5, 0);
            t.Padding = thisPadding;
            t.FontSize = 12;

            ListBoxItem li = nové ListBoxItem();
            li.Obsah = t;
            li.MaxHeight = 25;
            thisPadding = nové Hrúbka(5, 0, 5, 0);
            li.Padding = thisPadding;

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

vo vyššie uvedenom, Som vytvorenie textového poľa a nastavenie jeho písmo, jej výplň, atď.

Ďalšie, Vytvoriť ListBoxItem a nastavte jej obsah formátovaného textového poľa.

Nakoniec, ListBoxItem vložiť do zoznamu.  (Chcem ukázať najnovšie správy v hornej časti zoznamu, preto vložka(0,li) namiesto jednoduché pridať() vyvolanie.).

Budem ladením to trochu skôr, ako som naozaj spokojný s ListBox správanie ale vzor vyššie bolo veľmi plodné.  Dúfajme, že niekto nájde to užitočné.

</koniec>

undefinedVyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin

Nastavenie výšky ListboxItems v ListBox programovo pre Windows Store App

I 'm working on windows aplikácie skladu a jedna z vecí, ktoré chcem urobiť v app je zobrazenie denníka, ktorý zobrazuje správy o stave a iné informačné tidbits, ako používateľ pracuje veci. Na tento účel, Po pridaní ListBox takto:

<ListBox x:Meno ="GameStateLog" HorizontalAlignment ="Centrum" Výška ="221" VerticalAlignment ="Hore" Šírka ="499" Padding ="0" FontSize ="10">

 

C# kód pre naplnenie listbox za behu bol v duchu:

GameStateLog.Items.Insert(0, GameStateCounter    + ": Novú hru stav: Čakanie na hráča 1 meno");

Táto pracoval v poriadku dosť ale UI ukázal šialené množstvo polstrovanie okolo jednotlivé správy, ako oni boli pridané. To dáva zmysel, ak chcú koncoví používatelia môcť vybrať tieto položky, ale nemá zmysel, keď chcem zobraziť bežiace série správ denníka-užívateľov nebude zvoliť, len Zobraziť. To bolo divne ťažké nájsť jednoduchý spôsob, ako to urobiť a pravdepodobne, spôsob, ako som zistil, že nie je nevyhnutne "jednoduché", ale mám to funguje OK. Kľúčový pohľad pochádza z tohto vysielania tu (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) od Bob Relyea. Namiesto pridania struny na zhromažďovanie položiek na ListBox, Pridať ListBoxItems. Pridaním reťazca, ListBox bolo vytvorenie vlastnej ListBoxItem na jeho vlastné. Nebol som schopný ovplyvniť nič o tom, že ListBoxItem po faktu. Nový kód je:

        súkromné neplatné AddGameStateLogMessage(reťazec theMessage)
        {
            ListBoxItem li = nové ListBoxItem();
            li.Obsah = theMessage;
            li.MaxHeight = 25;

            Hrúbka thisPadding = nové Hrúbka(5, 0, 5, 0);
            li.Padding = thisPadding;

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

 

Tu som vytvoriť ListBoxItem spoločnosti a ich vkladanie. Som odstránil prebytočný polstrovanie nastavením jeho hrúbka.

To je dosť pružná úmysle urobiť nejaké farebné kódovanie upozorniť na konkrétne typy správ a pridaním priamo ListBoxItems som si štýl na nich akýmkoľvek spôsobom chcem.

Dúfam, že to pomôže niekto!

</koniec>

undefinedVyberajte môj blog.

Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin