Aš dirbu parduotuvėje programa windows ir vienas iš dalykų, aš noriu padaryti App yra rodoma žurnale, rodo būsenos pranešimų ir kitos informacijos smulkmenos kaip vartotojas dirba dalykų. Šiuo tikslu, Aš pridėjo sąrašo lauką taip:
<Sąrašo laukas x:Pavadinimas ="GameStateLog" HorizontalAlignment ="Centras" Aukštis ="221" VerticalAlignment ="Viršų" Plotis ="499" Prikimšti ="0" Šrifto dydis ="10">
C# kodą užpildyti sąrašo lauką vykdymo metu buvo palei linijas:
GameStateLog.Items.Insert(0, GameStateCounter + ": Naujas žaidimo valstybės: laukia žaidėjas 1 vardas, pavadinimas");
Tai dirbo iš švelniavilnių pakankamai bet UI parodė crazy kiekį apdaila aplink atskirus pranešimus, kaip jie buvo įtraukti. Tai turi prasmę, jei aš noriu galutiniai vartotojai galės pasirinkti šiuos elementus bet neturi prasmės, kai aš tiesiog noriu parodyti veikia nemažai pranešimus prisijungti – vartotojai negali pasirinkti šių, tik Rodyti jiems. Ji buvo keistai sunku rasti lengvai tai padaryti ir be abejo, tai, kaip man atrodė ne visada "lengva", bet aš jį dirbti gerai. Pagrindiniai insight atėjo iš šį skelbimą čia (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) nuo Bob Relyea. O ne pridėti eilučių elementų surinkimo sąrašo laukas, pridėti ListBoxItems. Pridėti eilutę, sąrašo laukas buvo sukurti savo ListBoxItem savo. Aš negalėjo turėti įtakos ką nors apie tą ListBoxItem po to. Naujajame kodekse yra:
privačių negalioja AddGameStateLogMessage(eilutė theMessage) { ListBoxItem li = naujas ListBoxItem(); Li.Kiekis = theMessage; Li.MaxHeight = 25; Storis thisPadding = naujas Storis(5, 0, 5, 0); Li.Prikimšti = thisPadding; GameStateLog.Items.Insert(0,Li); }
Čia aš sukurti ListBoxItem's ir įterpiant juos. Aš pašalinti perteklių užpildymas nustatant jo storis.
Tai gana lankstus, nes aš ketinu padaryti šiek tiek spalvų kodavimo pabrėžti tam tikros rūšies pranešimus ir tiesiogiai įtraukiant ListBoxItems man į stilius jiems jokiu būdu aš noriu.
Tikiuosi, kad tai padės kam nors!
</pabaigos>
Sekite mane Twitter ne http://www.twitter.com/pagalvin