ง่าย และรวดเร็ว: สี่เหลี่ยมโดยใช้ C# ใน Windows เก็บ App ย้าย

ปรัชญาของฉันบล็อกโดยรวมคือ ว่า มันเป็นอย่างดีเพื่อบล็อกเกี่ยวกับอายุ, เรื่องที่มีครอบคลุมอื่นตายแล้ว  ผมถือว่า หัวข้อนี้เป็นหนึ่งในบรรดา, แต่บล็อกมันต่อไป.

ฉันได้ทำงานบนเป็นหน้าต่างที่เก็บ app และฉันในส่วนที่ต้องการบางอย่างทำให้เคลื่อนไหว  เพื่อการนี้, ฉันได้รับหาบิต และชิ้นส่วนของ windows เก็บ app ภาพเคลื่อนไหวที่, เป็นดังปรากฎว่า, มีค่อนข้าง, แต่ไม่เหมือน, ภาพเคลื่อนไหวใช้ XAML ใน.NET (ฉันกำลังยังมากับความจริงที่ WinRT <> .NET 🙂 ).

เช้านี้ผมต้องการได้รับการจัดการลาก และวางการดำเนินงาน  เส้นทางน้ำที่, ผมมี bogged ลงย้ายสี่เหลี่ยมแทน :).  นี่คือรหัสที่เลื่อนสี่เหลี่ยมเมื่อผู้ใช้คลิกที่ปุ่ม:

   1:   
   2:              MatrixTransform ct = (MatrixTransform)rectBig.RenderTransform;
   3:              เมทริกซ์ m = ctเมตริกซ์;
   4:              m.OffsetX  = 10;
   5:              m.OffsetY  = 10;
   6:              ctเมตริกซ์ = m;
   7:              rectBig.RenderTransform = ct;

เคล็ดลับที่นี่เป็นที่ผมโดยตรงแล้ว OffsetX หรือ OffsetY  อาจมีวิธีฉลาดมากทำนี้ (และถ้าคุณรู้ และรู้สึก, กรุณาลงข้อคิดเห็น). 

การทำเช่นนี้, ฉันต้องการ:

1. ได้รับ MatrixTransform ของสี่เหลี่ยม (โดยหล่อ RenderTransform).

2. เมตริกซ์ของผู้ชายที่ได้รับ.

3. เปลี่ยนปรับค่าของเมตริกซ์.

4. กำหนดเมทริกซ์กลับไป MatrixTransform.

5. กำหนด MatrixTransform กลับไปสี่เหลี่ยมผืนผ้า.

การทดสอบ, ผมใส่สี่เหลี่ยม และปุ่มหน้าจอ. เมื่อคลิกปุ่ม, ตรรกะข้างต้นดำเนินการ และย้ายเหลี่ยมทันที.

ในบางจุด, อยากจะเคลื่อนไหวนี้ แต่ฉันมีความคิดวิธีการรับ DoubleAnimation การทำงานนั้น (Storyboard.SetTargetProperty() ลึกลับกับฉันนี้เป็นครั้ง).

</สิ้นสุด>

undefinedสมัครสมาชิกไปยังบล็อกของฉัน.

ทำตามฉันใน Twitter ที่ http://www.twitter.com/pagalvin

ทิ้งคำตอบไว้

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่. ช่องที่ต้องการถูกทำเครื่องหมาย *