Kategorija Arhiv: XAML

Nastavitev višine ListboxItems v seznamskem polju programsko za shranjevanje Windows App

Jaz delam na windows shranjevanja in ena od stvari, ki sem hotel narediti v app je prikazati dnevnik, ki prikazuje status sporočila in druge informativne tidbits, kot uporabnik dela stvari. V ta namen, Sem dodal seznamskem polju takole:

<Polje s seznamom x:Ime ="GameStateLog" HorizontalAlignment ="Center" Višina ="221" VerticalAlignment ="Top" Širina ="499" Oblazinjenje ="0" Pisava ="10">

 

C# kodo, da zapolnijo zapisati na runtime je bil po vzoru:

GameStateLog.Items.Insert(0, GameStateCounter    + ": Nove igre stanju: čaka na igralca 1 ime");

To obdelan jasno lep dovolj, ampak UI je pokazala nor znesek oblazinjenje okoli posamezna sporočila, kot so. Da ima smisel, če želite končnim uporabnikom omogočiti izbiro teh elementov pa nima nobenega smisla, ko želim pokazati vožnjo vrsto sporočila dnevniških zapisov-uporabniki ne izberete te, samo Poglej si jih. Je bilo čudno težko najti preprost način za to in verjetno, način, sem ugotovila, da ni nujno "preprosto", vendar sem dobil to ki dela OK. Ključni vpogled prišel s to objavo tukaj (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) iz Bob Relyea. Namesto, da dodajate strune za zbiranje predmetov na zapisati v seznam, Dodaj ListBoxItems. Z dodajanjem niza, Zapisati je bilo ustvarjanje svoje ListBoxItem na lastno. Nisem mogel, da vplivajo na nič o tem ListBoxItem po dejstvu. Nova koda je:

        zasebno nična AddGameStateLogMessage(niz theMessage)
        {
            ListBoxItem li = nove ListBoxItem();
            Li.Vsebina = theMessage;
            Li.MaxHeight = 25;

            Debelina thisPadding = nove Debelina(5, 0, 5, 0);
            Li.Oblazinjenje = thisPadding;

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

 

Tukaj sem ustvariti ListBoxItem osebe in jih vstavite. Sem odstranil presežek oblazinjenje z določitvijo njegove debeline.

To je zelo prilagodljivi, saj nameravajo storiti nekaj barvno kodiranje izpostaviti določene vrste sporočil in jih neposredno dodajanje ListBoxItems dobim slog them vsekakor želim.

Upanje to pomoč nekateri!

</namen>

undefinedNaročite se na moj blog.

Sledite mi na Cvrkutati na http://www.twitter.com/pagalvin