Facile e veloce: Spostare un rettangolo utilizzando c# In un App Store di Windows

La mia filosofia generale del blog è che è perfettamente bene al blog su vecchio, si stabilì a soggetti che sono stati coperti a morte altrove.  Presumo che questo argomento è uno di quelli, ma io sono il blogging è comunque.

Sto lavorando su un app store di finestra e io sono la parte dove ho bisogno di fare qualche animazione.  A tal fine, Ho capire bit e pezzi di windows memorizzare animazione app che, come si scopre, è abbastanza vicino a, ma non è esattamente come, Animazioni XAML basato in .NET (Sto venendo ancora alle prese con il fatto che WinRT <> .NET ).

Questa mattina ho voluto ottenere una maniglia su trascinare e rilasciare le operazioni.  In rotta verso che, Io sono impantanato muovendo invece un rettangolo :).  Ecco il codice che si muove un rettangolo quando l'utente fa clic su un pulsante:

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

Il trucco è che non posso cambiare direttamente OffsetX o OffsetY.  Ci può essere un modo più intelligente di fare questo (e se si conosce e si sentono come, si prega di postare nei commenti). 

A tale scopo, Ho bisogno di:

1. Ottenere l'oggetto MatrixTransform del rettangolo (eseguendo il cast RenderTransform).

2. Ottenere la matrice di quel tipo.

3. Modificare gli offset di Matrix.

4. Riassegnare il Matrix torna alla MatrixTransform.

5. Riassegnare l'oggetto MatrixTransform torna al rettangolo.

Per testarlo, Ho messo un rettangolo e pulsante sullo schermo. Quando si fa clic sul pulsante, la logica di cui sopra viene eseguito e si muove il rettangolo immediatamente.

Ad un certo punto, Vorrei animare questo ma non ho idea di come ottenere un oggetto DoubleAnimation per lavorare su di esso (Storyboard.SetTargetProperty() è un mistero per me su questo per il momento essere).

</fine>

undefinedIscriviti al mio blog.

Seguimi su Twitter a http://www.twitter.com/pagalvin

Lasciare una risposta

L'indirizzo email non verrà pubblicato. i campi richiesti sono contrassegnati *