Tag Archives: Qhov rais tom khw

Txoj kev sai thiab yooj yim: Teev tus me me ntawm ib yam khoom nyob rau hauv ib lub thawv sau nyob rau hauv lub qhov rais tom khw App

Nyob rau hauv lub qhov rais tom khw App kuv yuav tsim, Kuv xav kom koj qhia cov neeg siv ntau yam lus xwm txheej.  Kuv nqa ib ListBox li lub cuab tam los qhia nws kom lawv scroll los ntawm cov khoom lawv thiab zoo tag li. 

Lus muaj xwm txheej xwb, li ntawd, yuav tsis muaj muab ntxiv tag li whitespace ncig vim tus neeg siv yuav yeej tsis xaiv lawv rau txhua yam.  Default cwj pwm ntawm cov ListBox muab ib tug nqi ntau yam pauv loj padding thiab kuv xav rhuav tshem ntawm nws.  Zoo.... koj tsis tau ua tshaj plaws nyob rau hauv ListBox ntawd tsi ncaj qha.  TXAWM LI CAS LOS, koj yuav ua rau cov khoom uas koj ntxiv:

        lwm yam khoob lug AddGameStateLogMessage(hlua theMessage)
        {
            TextBox t = tshiab TextBox();
            t.Text = GameStateCounter    + ": " + theMessage;
            t.TextWrapping = TextWrapping.Wrap;
            t.MinWidth = 400;
            Thickness thisPadding = tshiab Thickness(5, 0, 5, 0);
            t.Padding = thisPadding;
            t.FontSize = 12;

            ListBoxItem lis = tshiab ListBoxItem();
            lis.Txheej = t;
            lis.MaxHeight = 25;
            thisPadding = tshiab Thickness(5, 0, 5, 0);
            lis.Padding = thisPadding;

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

nyob rau saum no, Kuv tabtom npaj ib cov TextBox thiab teem nws font, nws cov padding, yam.

Tom ntej, Tsim tau ib lub ListBoxItem thiab muab nws cov ntaub ntawv kawm kom tau cov formatted TextBox.

Thaum kawg, Kuv ntxig rau ListBoxItem mus rau lub ListBox.  (Kuv xav qhia tias tsis ntev los no tshaj lus rau saum daim ntawv, li no tso nrog rau cov(0,lis) tsis muaj ib tug sib ntxiv tej yam yooj yim() invocation.).

Kuv yuav ua tweaking no ua lub ntej kuv yeej zoo siab nrog lub ListBox zoo tab sis cov qauv qhia saum toj no lawm ncw.  Hopefully lwm tus pom tias yuav pab tau.

</kawg>

undefinedSubscribe rau kuv blog.

Raws li kuv nyob Twitter tom http://www.twitter.com/pagalvin

Teem rau qhov siab ntawm ListboxItems nyob hauv ib ListBox Programmatically rau lub qhov rais tom khw App

Kuv yuav ua hauj lwm rau hauv ib daim ntawv thov lub tsev khw thiab yog ib yam uas kuv xav ua nyob rau hauv lub yog tso saib lub cav uas pom tias yog lus raws li txoj cai thiab muaj lwm yam xwm txheej tidbits li cov neeg ua haujlwm yam. Rau qhov tus kawg, Kuv ntxiv tus ib ListBox raws li nram no:

<ListBox x:Lub npe ="GameStateLog" HorizontalAlignment ="Chaw" Qhov siab ="221" VerticalAlignment ="Saum" Dav ="499" Padding ="0" FontSize ="10">

 

Qhov C# chaws los populate tus listbox ntawm runtime yog raws cov kab kev:

GameStateLog.Items.Insert(0, GameStateCounter    + ": Tshiab qus xeev: tos rau cov neeg uas ua ntawv 1 lub npe");

Qhov no ua haujlwm tawm nplua txaus, tiam sis cov UI tsom tus vwm npaum li cas padding nyob ib ncig ntawm ib tug neeg lus raws li lawv tau ntxiv. Uas ua rau kev txiav txim zoo yog hais tias kuv xav kawg cov neeg siv yuav tsum tau xaiv cov khoom tiam sis tsis ntxim yog thaum kuv xav qhia tus ciav series uas sib cav – cov neeg siv yuav tsis xaiv cov no, cia saib lawv. Kaum feeb ib qho nyuaj mus nrhiav ib txoj kev yooj yim ua li no thiab arguably, qhov uas kuv pom tias nws tsis yog tas "yooj yim" tab sis kuv tau txais nws ua hauj lwm los lawv xav tshuaj. Cov kev pom tseem ceeb tuaj ntawm no xo ntawm no (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) ntawm Bob Relyea. Tsis txhob muab cov hlua rau qhov khoom sau los ntawm tus ListBox, ntxiv ListBoxItems. Yog muab ib txoj hlua, tus ListBox yog ib txoj kev kom nws ListBoxItem nws xwb. Kuv tsis tau mus rau txhua yam uas hais txog ntawd ListBoxItem tom qab txog. Yog lub chaws tshiab:

        lwm yam khoob lug AddGameStateLogMessage(hlua theMessage)
        {
            ListBoxItem lis = tshiab ListBoxItem();
            lis.Txheej = theMessage;
            lis.MaxHeight = 25;

            Thickness thisPadding = tshiab Thickness(5, 0, 5, 0);
            lis.Padding = thisPadding;

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

 

Ntawm no kuv yog tsim tau lub ListBoxItem thiab inserting lawv. Kuv tshem tawm cov padding ntau heev los ntawm teev cov thickness.

Qhov no zoo nkauj yooj ywm kom ua los ntawm kev ncaj qha mus ntxiv ListBoxItems kuv tau mus style lawv li kuv xav thiab kuv tseem npaj siab yuav ua tau ib co tsos kob coding los highlight tej hom lus.

Qhov no yuav pab lwm tus neeg vam!

</kawg>

undefinedSubscribe rau kuv blog.

Raws li kuv nyob Twitter tom http://www.twitter.com/pagalvin