Arkivat mujore: Prill 2013

Quick dhe Easy: Leviz një drejtkëndësh duke përdorur C # Në një App Store Windows-

Filozofia ime përgjithshëm blog është se ajo është e përkryer gjobë të blog rreth vjetra, zgjidhen lëndët që kanë qenë të mbuluara me vdekje gjetkë.  Unë supozoj kjo temë është një nga ata, por unë jam Blogging atë anyway.

Unë kam qenë duke punuar në një app dyqan dritare dhe unë jam në pjesën ku unë duhet të bëni disa animimin.  Për këtë qëllim, Unë kam qenë duke parafytyruar se copa dhe pjesë të dritareve animacion App Store, e cila, siç rezulton nga, është mjaft afër, por jo tamam si, XAML animacione bazuar në NET. (Unë jam ende vijnë për të mbërthen me faktin se WinRT <> .NET 🙂 ).

Këtë mëngjes kam kërkuar për të marrë një trajtuar në drag and drop operacionet.  En rrugë për se, I kam bogged poshtë lëviz një drejtkëndësh në vend :).  Ja kodin që lëviz një drejtkëndësh kur përdoruesi klikon nje buton:

   1:   
   2:              MatrixTransform ct = (MatrixTransform)rectBig.RenderTransform;
   3:              Matrix m = ct.Matrix;
   4:              m.OffsetX   = 10;
   5:              m.OffsetY   = 10;
   6:              ct.Matrix = m;
   7:              rectBig.RenderTransform = ct;

Mashtrim këtu është se unë nuk mund të drejtpërdrejt të ndryshojë OffsetX ose OffsetY.  Nuk mund të jetë një mënyrë më të zgjuar për ta bërë këtë (dhe në qoftë se ju e dini dhe të ndjehen si, ju lutem postoni në komentet). 

Në mënyrë që të bëni këtë, Unë kam nevojë për:

1. Get MatrixTransform e drejtkëndëshit (nga hedh RenderTransform).

2. Get Matrica e atë djalë.

3. Ndrysho offsets të matricës së.

4. Reassign Matrix prapa në MatrixTransform.

5. Reassign mbrapa MatrixTransform të drejtkëndëshit.

Për të provuar atë, I vënë një drejtkëndësh dhe butonin e ekranit. Kur klikoj butonin e, Logjika më sipër ekzekuton dhe lëviz drejtkëndësh menjëherë.

Në disa pika, Unë do të doja të gjallë këtë, por unë nuk kam asnjë ide se si për të marrë një DoubleAnimation për të punuar në atë (Storyboard.SetTargetProperty() është një mister për mua në këtë për momentin).

</fund>

undefinedAbonohen në blogun tim.

Atëherë ejani pas meje në Twitter në http://www.twitter.com/pagalvin

Vendosja lartësia e ListboxItems Në një listbox programuar për Windows App Store

I’m working on a windows store application and one of the things I want to do in the app is display a log that shows status messages and other informational tidbits as the user works things. Për këtë qëllim, Kam shtuar një ListBox si vijon:

<ListBox x:Name ="GameStateLog" HorizontalAlignment ="Qendër" Height ="221" VerticalAlignment ="Më i lartë" Width ="499" Zbutja ="0" FontSize ="10">

 

# Kodi C të populloj ListBox në kohën e duhur ishte përgjatë vijave të:

GameStateLog.Items.Insert(0, GameStateCounter     + ": Shtet i ri lojë: duke pritur për lojtar 1 emër");

This worked out fine enough but the UI showed a crazy amount of padding around the individual messages as they were added. Kjo e bën kuptim në qoftë se unë dua përdoruesit përfundimtarë të jenë në gjendje për të zgjedhur këto objekte, por nuk ka kuptim, kur unë vetëm dua të tregojë një seri drejtimin e mesazheve log - përdoruesit nuk do të zgjidhni këto, just view them. Ajo ishte çuditërisht e vështirë për të gjetur një mënyrë e lehtë për të bërë këtë dhe ndoshta, the way I found it isn’t necessarily “easy” but I got it working OK. Insajt kyç erdhi nga kjo postimit këtu (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) from Bob Relyea. Në vend të shtuar strings për mbledhjen Items mbi listbox, add ListBoxItems. Duke shtuar një varg, the ListBox was creating its own ListBoxItem on its own. I wasn’t able to affect anything about that ListBoxItem after the fact. Kodi i ri është:

        privat pavlefshme AddGameStateLogMessage(varg theMessage)
        {
            ListBoxItem se = i ri ListBoxItem();
            = li.Content theMessage;
            li.MaxHeight = 25;

            Trashësia thisPadding = i ri Trashësia(5, 0, 5, 0);
            li.Padding = thisPadding;

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

 

Here I’m creating ListBoxItem’s and inserting them. I larguar mbushje e tepërt me vendosjen trashësia e saj.

Kjo është shumë fleksibël si unë kam ndërmend të bëj disa ngjyra coding për të nxjerrë në pah lloje të veçanta të mesazheve dhe duke shtuar direkt ListBoxItems I merrni për stilin e tyre ndonjë mënyrë unë dua.

Shpresoj se kjo ndihmon dikush!

</fund>

undefinedAbonohen në blogun tim.

Atëherë ejani pas meje në Twitter në http://www.twitter.com/pagalvin