In een Windows Store App ben ik het creëren van, Ik wil laten zien van de gebruiker verschillende informatieve berichten. Ik pakte een ListBox als het instrument om te laten zien, zodat ze via hen en al dat goede materiaal schuiven kunnen.
De berichten zijn alleen informatief, dus er is geen behoefte om al dat extra witruimte rond hen aangezien de gebruiker ze nooit voor om het even wat kunt selecteren. Het standaardgedrag van de ListBox biedt een aanzienlijke hoeveelheid opvulling en ik wilde om zich te ontdoen van het. Goed.... u kunt niet dat soort ding op de ListBox rechtstreeks. ECHTER, u kunt dit doen op de items die u toevoegt:
privé VOID AddGameStateLogMessage(tekenreeks theMessage) { TextBox t = Nieuw TextBox(); t.Text = GameStateCounter + ": " + theMessage; t.TextWrapping = TextWrapping.Wrap; t.MinWidth = 400; Dikte thisPadding = Nieuw Dikte(5, 0, 5, 0); t.Padding = thisPadding; t.FontSize = 12; ListBoxItem li = Nieuw ListBoxItem(); Li.Inhoud = t; Li.MaxHeight = 25; thisPadding = Nieuw Dikte(5, 0, 5, 0); Li.Opvulling = thisPadding; GameStateLog.Items.Insert(0,Li); }
in het bovenstaande, Ik ben een tekstvak maken en instellen van het lettertype, de opvulling, etc.
Volgende, Ik maak een ListBoxItem en stel de inhoud op de opgemaakte TextBox.
Tot slot, Ik invoegen de ListBoxItem in de ListBox. (Ik wil laten zien van de meest recente berichten op de top van de lijst, Vandaar de invoegen(0,Li) in plaats van een eenvoudige toevoegen() inroepen.).
Ik zal worden tweaken dit een beetje voordat ik echt blij met de ListBox gedrag ben maar het patroon hierboven is zeer vruchtbaar geweest. Hopelijk vindt iemand anders het nuttig.
</einde>
Volg mij op Twitter op http://www.twitter.com/pagalvin