Snabb och enkel: Flytta en rektangel med C# i en Windows Store App

Min övergripande blogg filosofi är att det är väl bra att blogga om gamla, bosatte sig ämnen som har täckts till döden på andra håll.  Jag antar att detta ämne är en av de, men jag är blogga det ändå.

Jag har jobbat på en fönster store app och jag på delen där jag behöver göra några animera.  I detta syfte, Jag har räkna ut bitar och bitar av windows lagrar app animation som, som det visar sig, är ganska nära till, men inte precis som, XAML baserad animationer i .NET (Jag fortfarande kommer till rätta med faktumet att WinRT <> .NETT 🙂 ).

I morse jag ville få ett grepp om dra och släpp-operationer.  På väg till som, Jag har kört ner flytta en rektangel i stället :).  Här är koden som flyttar en rektangel när användaren klickar på en knapp:

   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;

Tricket är att jag inte direkt att ändra OffsetX eller OffsetY.  Det kan finnas ett smartare sätt att göra detta (och om du vet och känner, posta i kommentarerna). 

För att göra detta, Jag behöver:

1. Få MatrixTransform av rektangeln (genom att RenderTransform).

2. Få matrisen av att killen.

3. Ändra i matrisen förskjutningar.

4. Tilldela om matrisen tillbaka till MatrixTransform.

5. Omtilldela MatrixTransform tillbaka till rektangeln.

Testa det, Jag satte en rektangel och knapp på skärmen. När jag klickar på knappen, ovanstående logiken körs och flyttar rektangeln omedelbart.

Vid något tillfälle, Jag vill animera detta men jag har ingen aning hur man får en DoubleAnimation att arbeta på det (Storyboard.SetTargetProperty() är ett mysterium för mig på den här gången att vara).

</slutet>

undefinedPrenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

Ange höjden av ListboxItems i en ListBox programmässigt för Windows Store App

Jag arbetar på en windows store ansökan och en av de saker jag vill göra i app är att visa en logg som visar statusmeddelanden och andra informativa godbitar som användaren arbetar saker. I detta syfte, Jag la en listruta som följer:

<ListBox x:Namn ="GameStateLog" HorizontalAlignment ="Center" Höjd ="221" VerticalAlignment ="Topp" Bredd ="499" Padding ="0" FontSize ="10">

 

C#-koden att fylla i listrutan vid körning var i linje med:

GameStateLog.Items.Insert(0, GameStateCounter    + ": Nya spelet staten: väntar på spelaren 1 Namn");

Detta fungerade bra nog men UI visade en galen mängd stoppning runt de enskilda meddelandena som de lades. Det är vettigt om jag vill att användare ska kunna markera dessa objekt men inte meningsfullt när jag vill bara visa en rinnande serie med logga meddelanden-användare kommer inte att välja detta, bara visa dem. Det var märkligt svårt att hitta ett enkelt sätt att göra detta och utan tvekan, Hur jag hittade det är inte nödvändigtvis "lätt" men jag fik den arbetande OK. Den viktigaste insikten kom från detta inlägg Här (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) från Bob Relyea. Istället för att lägga strängar objektmängden på ListBox, Lägg till ListBoxItems. Genom att lägga till en sträng, ListBox var att skapa en egen ListBoxItem på egen hand. Jag var inte kunna påverka något om att ListBoxItem i efterhand. Den nya koden är:

        privat void AddGameStateLogMessage(sträng theMessage)
        {
            ListBoxItem li = nya ListBoxItem();
            Li.Content = theMessage;
            Li.MaxHeight = 25;

            Tjocklek thisPadding = nya Tjocklek(5, 0, 5, 0);
            Li.Padding = thisPadding;

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

 

Här jag skapar Listboxitems och infoga dem. Jag tog bort överflödigt stoppning genom att ange dess tjocklek.

Detta är ganska flexibelt som jag avser att göra några färgkodning för att markera särskilda typer av meddelanden och genom att direkt lägga till ListBoxItems jag får stil dem som jag vill.

Hoppas detta hjälper någon!

</slutet>

undefinedPrenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

Snabb och enkel – Säker azurblå könamn

Dumt men enkel post.

Som en uppföljning till gårdagens inlägg på"StorageException var ett ohanterat"Jag trodde jag skulle visa den wee kodsträng jag använder för att generera könamn:

 

        offentliga statisk sträng GetRandomQueueName()
        {
            GUID g;
            g = System.Guid.NewGuid();
            återvändande g.ToString();

        } 

Typ av dumt i sin enkelhet men fungerar bra för mig och har genererat 100-tals säker könamn i de senaste två veckorna.

</slutet>

undefinedPrenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

Arbeta med Azure ärendeköer – "StorageException var ett ohanterat”

Jag har spelat med Azure köer för den senaste veckan eller två och det har pågått smashingly.  Där var dessa saker när jag behövde dem tillbaka i 1990?

Denna artikel, i synnerhet, är ett utmärkt intro till köer för .NET-programmerare: http://www.windowsazure.com/en-us/develop/net/how-to-guides/queue-service/.  Med hjälp av denna artikel, Jag har kunnat dra ihop en riktigt fin bit av klient-server logik som hittills är pålitlig och rättvis arbeten med ingen sorg.  Riktigt-där var det här i 1990?

Jag har drabbats en liten stötesten direkt ur porten, emellertid.   Så snart jag kommit bort från detaljerna i genomgång, Jag blev påkörd med en StorageException och en "remote server server returnerade ett fel (400) Bad Request.

image

Det visade sig att min könamn var avstängd:

image

När jag ändrade "OneQueueToRuleThemAll" till "onequeuetorulethemall" gick StorageException bort.  Jag har inte märkt något av den dokumentation som ropar detta men det kan väl göra som.

Hoppas det hjälper någon.

</slutet>

undefinedPrenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

Tidiga intryck på Surface Pro

[Uppdatering 3/26: Jag fick en tweet från @Surface folk frågar om de kunde hjälpa mig med något, så jag gjorde en plugg för Swype, som de erkände med en "intressant – tack för feedback, Paul!”  Jag tycker verkligen att Swype skulle göra denna enhet mycket enklare att använda för casual produktivitet.  (Också, fast ett stavfel påpekat för mig av en gammal vän – tack, Mike!)]

Mitt kontor vann en tävling tidigare i år med en liten kontantpris fäst vid den.  Jag använde pengarna till att subventionera köp av en Surface Pro (128GB med 2 års försäkring planen) och jag har använt en hel del sedan dess.  Jag köpte den från Microsoft Store på köpcentret av Columbus Circle i Manhattan.  Totala priset var ca $1300 USD med det bättre tangentbordet och sossans försäkring 🙂

Jag fick bara det 4 dagar sedan och redan jag kan knappt föreställa mig inte ha den.  Jag tog med till sängen att läsa den så vitt utmärkta Programmering Windows 8 Apps med HTML, CSS, och JavaScript och det var det första kom jag för när jag vaknade.

Här är några intryck, i ingen speciell ordning:

Hur röra: Jag vill ta varje skärm ser jag nu.

Windows 8 är för touch-enheter: Jag har en mycket starkare uppskattning för Windows 8.  Denna O/S översätter mycket bättre till en touch enhet än ett tangentbord.  Först, Jag visste inte att knappt komma igång men det blev snabbt andra natur för mig. Och det är mycket snabb och lyhörd, så du inte tycker du släpar runt eller betala en straffavgift för ett misstag.  Jag är inte en expert med Användargränssnittet (Mystery fortfarande saker) men jag flyger runt platsen med en hel del förtroende efter en relativt liten handfull timmar på den

På samma gång, nu när jag har använt touch, Jag har en mycket bättre förståelse för o/s från en Dell laptop perspektiv.  Musmattan på min E6430 konkurrera inte med den ytan flera kontaktpunkter, osv., men den gör ett bra jobb med några av gesterna.  Men oavsett musmattan, efter att ha arbetat med ytan nu, Jag vet vad som händer när jag flytta min musmarkören runt och olika små ledtrådar dyka upp i hörnen och sådant.

Jag vill också peka ut en linje från detta blogginlägg genom Brandon Carson:

Kommer Microsoft med ett nytt perspektiv på hur ett operativsystem bör stödja dess användare. I stället för två operativsystem och en splittring mellan enheter, Microsoft bygger ett nytt OS för att blanda den tillbakalutad erfarenheten med den desktopen erfarenheten och ge användarkontroll över hur du interagerar med sin enhet."

Den linjen kristalliserad för mig den hela punkt Win8 som ett o/s.  Det är en iPad och det är bärbara.  Jag gillar det.  Jag gillar det mycket.  Jag med inte min laptop till säng mycket ofta och när jag gör, Det är en nyhet och en smärta.  Det här kan gå överallt med mig, inklusive arbete.

Windows store är awesome!  Jag antog bara, När jag köpte ytan, att windows AppStore skulle vara ett fullständigt slöseri med tid, en karg ödemark av halvhjärtade apps klängande den steniga jorden, sorgligt och patetiskt.  Jag tror att olika anti-Microsoft folk vinner hjärtan och sinnen argumentet här.  Även om det stämmer empiriskt att Apple och Google har bazillions mer apps i sina butiker, dwarfing MSFT, MSFT fortfarande har en ansenlig urval och det växer.   Min poäng är inte så MSFTS butik är "bättre" än de, men att det inte är så illa som intertubes gör att du tror.  Ge det en titt. Det finns många intressanta apps där ute.

Pennan är awesome!: Jag har velat ha förmåga att skriva och skissa arkitekturen diagram för evigt.  3: e part allt kände alltid kludgy om du köpte en som var dyr och jag bara inte känner för det.  Med ytan, Det är helt naturligt och snabb, plus massor av intressanta apps tillgänglig.  Dessa inkluderar paint.net, något intressant från Evernote (Skitch), OneNote (som har första klass stöd för pennan), PowerPoint (kan beskriva och rita under presentationer).  Jag har knappt skrapat på ytan här och I 'm loving it.  Kolla in detta blogginlägg för en mer professionell åsikt på hur ytan kan användas för mer industriell styrka konst.  Jag kan inte vänta för min nästa PPT-demo.

Det spelar Civ5! (med lite hjälp från några vänner):  Civ with touch är riktigt snyggt 🙂

Vissa olägenheter:

  • Batteriet är inte bra.  Inte bättre än min laptop.  Jag har detta vaga begrepp att batterierna måste vara "luftkonditionering" (men det är antagligen nonsens) så om så är fallet, Det kan bli bättre.
  • Tangentbordet är mycket liten.  Men, Jag har att få Använd till den.
  • Nej Swype! Jag precis börjat använda Swype för några månader sedan på min Galaxy S3 kör Android och jag kan inte tro hur produktiv gjorde det mig.  Inte ha som på Win8 är verkligen frustrerande och det verkar som det blir en lång tid, om någonsin, innan Swype finns.  Några andra tredje parter arbetar på det men min 30 sekunder till ett värde av forskning innebär att o/s bara inte stöder den.  (Om du inte använder Swype eller en av dess kusiner bör du sluta läsa detta blogginlägg och ge det ett försök; Detta inlägg kommer nästan säkert fortfarande vara här när du kommer tillbaka).
  • Övergripande formfaktor – fortfarande vänja den.  Det är en vacker skärm och Netflix är bra på den.  Surfning är bra på det. Men, MS Word – typ av hårt och inte mycket touch vänliga (Till mig, så långt).  Jag har sett skärmdumpar av folk som använder visual studio på det-som verkar vara sträck.  Men jag ska ge det ett försök någon gång.

Så, där går du!  Hoppas detta hjälper någon tänka om den.  Det är för tidigt för mig att säga "köp det!”.  Jag ska återkomma till det här inlägget i en vecka eller så och följa upp.

</slutet>

Prenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

En oväntat Awesome teambuilding övning

Jag sammankallade ett team möte här för New York SharePoint team och i sista minuten, utan någon speciell anledning, lagt till en ny punkt på dagordningen:

Personlig information exchange: Jag ska dra upp google earth och vi alla kommer att berätta laget där vi föddes och där vi bor idag. Jag kommer karta den verklig tid. Vi ska också göra en snabb genomgång av våra respektive familjer. Känn dig fri att skapa en fantasy familj här men håll i åtanke att när du börjar ljuga om familjen, Du måste skapa successivt utarbeta lögner och du kommer sannolikt resa upp någon gång, så var beredd på att.

Jag trodde det skulle ta 20 minuter eller så att göra med nio personer.  I stället, Det tog 90 minuter Leende, främst på grund av att människor tillbringade betydande mängder av tid på olika platser runt om i världen.  Det var en fascinerande övning och vi lärde oss säkert mycket om varandra.  Jag lärde mig, Slutligen, vad folk menar med "north" och "södra" Indien.

Om du kan hitta tid i detta upptagen och hektiska dagar att göra något som det, Jag rekommenderar varmt det.

</slutet>

Prenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

Spåra praxis verksamhet – Del 1

Ungefär ett år sedan, Jag gick med Slalom, samråd med här i new York som vad vi kallar en praxis området leda.  (Som en liten parentes till grad att denna blogg inlägg, att ändra i jobb står för min totala drop-off i bloggning.  Det var en stor förändring i roller och en stor förändring i dag till dag "saker" men jag har typ av acklimatiserad själv till den och ser framåt att skriva igen Leende ).

I denna PAL roll, Jag ansvarar för att rädda bolaget och omedelbara omgivning 21 Västra 21st street från katastrof på regelbunden basis.  Det är en stor press (mer än du kanske tror – Tänk bara på alla barn!). 

I tjänst till att imperativ, Jag behöver att hjälpa till med försäljning, skapa och uppdatera go-to-market erbjudanden, hyra bra folk, träna upp folk så att de bättre (men egentligen, att göra mitt jobb lättare) och ibland göra något fakturerbar på en klient.  Får jag en massa "input"-frågor från klienter, affärsmöjligheter, min egen dum tankar och så vidare.  En del av det är riktigt bra (som en varm försäljning oppty) medan mycket av det är mindre bra.  Viktiga är att inledningsvis spåra, prioritera och hantera varje av dessa idéer (stora och små) på ett framgångsrikt sätt. 

Denna typ av uppgift förvaltning är inte ny, rätt?  Och vi har massor av uppgiftsverktyg för att hjälpa oss med detta.  Outlook har uppgifter.  Du kan smälla ett kalkylblad ihop fint och snabb.  Min första uppgift verktyg var en juridisk anteckningar tillbaka i mina dagar på GAF som utvecklare i IT-avdelningen.  (Fråga mig om de gamla goda dagarna nästa gång du ser mig om du är intresserad, eller kanske inte…).

Att vara en SharePoint-kille (nominellt, minst), Jag har alltid tyckt att använda SharePoint.  Men av någon anledning, en generisk lista gjorde aldrig riktigt det för mig.  Ett gäng månader sedan, Jag bestämde mig att läka mig själv och bara skapa en SharePoint-baserad lösning.  Det var så pinsamt enkelt att skapa när jag trodde att skriva om det här.

Så, mina mål här var mycket enkla:

  • Super enkel och snabb datainmatning
  • Prioritera aktiviteter
  • Kategorisera verksamhet
  • "nästa steg" driven – kommer dessa aktiviteter ofta span veckor (kanske till och med månader).  De slut nästan aldrig"" efter en viss uppdatering.

Dessa bitar lämpar sig mycket bra för en innehållstyp, så det är vad jag skapat:

image

Du kan faktiskt se att jag hade en försäljning bias med detta först, eftersom jag har det "Klient"-fältet.  En hel del min praktik verksamhet baseras runt klienter (antingen faktiska eller potentiella).  Men många av dem har också internt fokus.  Jag smälla "Slalom" där när jag skapar dem, men det känns alltid lite konstigt.  Jag borde ha döpt den något mer allmän.  Kanske "Target organisation" eller något.

Här är några diverse anteckningar på innehållstypen:

  • Aktivitet påverkar delegerat till en mätning av prioritet.  Jag vet inte varför jag gick med "Effekt" och inte "prioritet" dag noll, men det är vad jag gjorde. 
  • Nästa steg och nästa steg datum – jag har en instrumentpanel som drivs av nästa aktivitet datum.  Den här instrumentpanelen blivit typ av min marschorder för dagen/veckan.  Jag bara gå till instrumentpanelen och fokusera på hög prioritet grejer först och gå därifrån.  (Det är begreppet en "otaggade"
  • Primära ägare – enda anmärkning är – visst är det häftigt att du kan sortera och filtrera på Markera flera kolumner i SP 2010! Jag faktiskt köper inte helt in i detta begrepp först.
  • Aktivitetens Status – egentligen bara "Öppna" eller "Stängd". 
  • Primära praxis – efter jag började använda denna, en annan kompis i min grupp ville prova detta, så jag halkade detta i mixen för att skilja mellan mina grejer (Portaler & Samarbete) och hennes saker (Azure).

Här är min instrumentpanel:

image

(ledsen för alla suddiga ut bitar – jag kände som att skapa en massa testdata och jag vill inte ge någon en hjärtattack över dela viktig information [se biten i intro re: rädda världen, osv., osv., osv.]).

Jag har flera andra åsikter på denna lista, inklusive en databladsvy som tillåter mig att massa uppdateringar.  Jag gör detta mest ofta när ett gäng lägre prioriterade objekt som jag planerade att göra en aldrig riktigt fick gjort och måste skjutas upp en vecka.

Varje dag, Jag drar upp min verksamhet logg och börja bara arbeta från toppen av listan.

Delvis 2, Jag ska förklara hur jag gjorde detta ännu mer användbara med tillägg av en trevlig e-post-aktiverade doc bibliotek och SPD arbetsflöde.

</slutet>

Prenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

Slalom, samråd med–Boston SharePoint ledarskap krävs

Jag gick med Slalom samråd med sex månader sedan dag och det har varit en otrolig resa.  Jag planerar att blogg några mer om som nu när jag börjar känna sig ganska fast.  Här är som lever i en saga för det mesta.  Smarta människor, intressant klienter, fast stöd från ledningen både lokala och företagens … den tillfälliga libation … bra grejer.

Vårt kontor i Boston har precis öppnat och de söker en ledare att lansera sin SharePoint-praxis.  Det är en mycket komplex, fullständig jobb med roliga utmaningar.  Du definierar erbjudanden av intresse till den lokala marknaden, du lyfta upp din ärmar och göra verkligt arbete och du anställa folk att bygga upp det bästa laget kan du hantera.  Jag kan inte rekommendera det starkt nog.

Om du är intresserad av denna ståndpunkt eller om du vet någon som skulle kunna vara intresserade, Vänligen brand utanför ett mail till mig: Paul.GALVIN@slalom.com.

Jag är glad över att dela mina uppriktiga erfarenheter (både bra och dåliga) här i New York.

</slutet>

Prenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

Min arbetsflöde bok är tillgänglig för inköp

Jag började först prata med min ursprungliga medupphovsmän över två år sedan.  De övergav så småningom projektet, men sen sommar, med hjälp av flera nya medupphovsmän, Jag kunde äntligen att ta över mållinjen. 

Professionell arbetsflödet i SharePoint 2010: Real World Business Solutions hit Amazon och Barnes och ädla webbplatsen någon gång under senaste 10 dagar.  Den finns i Pocket och Kindle/vinklar och allt detta, precis i tid för en stor julklapp. Leende

Denna bok är om två saker: 1) ger slutanvändare så att de kan lösa sina affärsproblem med hjälp av SP 2010 arbetsflödet kapacitet och 2) att hjälpa IT-personal (Utvecklare i synnerhet) gör samma sak.  Ungefär två tredjedelar av boken riktar sig till vad jag kallar "Aktivist användare" (kunnig men icke-tekniska och motiverade slutanvändare).  Det försöker förklara hur du utforma lösningar i SharePoint 2010 med hjälp av SharePoint Designer arbetsflöde och ett antal ytterligare SharePoint-funktioner.

Den sista tredjedelen är ärligt syftar till utvecklaren.  Men, till skillnad från några av de rent tekniska böckerna på marknaden, dessa kapitel förklarar hur SharePoint utvecklare kan skapa funktioner som ytterligare bemyndigar de aktivistiska användarna med hjälp av anpassade SharePoint Designer aktiviteter och andra tekniska bitar.  Genom bemyndigar de aktivistiska användarna i din organisation, Du frigör utvecklingsgruppen (eller bara själv) gör det verkligen svårt (vanligtvis mer tekniskt intressant) grejer att slutanvändare kan aldrig göra och aldrig bör försök sina egna.

Under de kommande veckorna, Jag ska skriva upp mer om boken, inklusive fluffiga saker gillar "hur är det som att skriva en bok" att jag vet att många människor är intresserade av att veta om.  Upp – ska jag först införa min medupphovsmän, utan vilka denna bok skulle aldrig överlevt för att se dagens ljus.

Läs mer om boken på den Amazon-webbplats.

</slutet>

Prenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

SharePoint Web del UI Designmönster med XSL

Jag har givit ett föredrag i år på på ett Designmönster for SharePoint-webbdelar där Användargränssnittet helt förvaltas via XSL. 

Jag planerar att skriva detta upp mer i detalj under nästa period av tid.  Under tiden, här är PowerPoint.

Källkoden för detta projekt är upp på CodePlex här: http://webpartsxsl.codeplex.com/.

</slutet>

Prenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin