ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ uwp ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ windows 10
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ UWP. ΠΠ° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΌΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π»ΡΠ±ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Windows 10, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ Π·Π°Ρ ΠΎΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ.
ΠΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΡ.
ΠΠ±ΡΡΠ°ΡΡΠΈΠ΅ ΠΊΡΡΡΡ
ΠΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΎΠ±ΡΡΠ°ΡΡΠΈΠ΅ ΠΊΡΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π²Π°ΠΌ ΡΠ·Π½Π°ΡΡ, ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π·Π°Π΄Π°Ρ ΠΈ Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΡΠΎ Π½Π΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°, Π½ΠΎ Π² Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΡΡ Π²Π°Ρ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΏΡΡΡ.
ΠΠ°Π΄Π°ΡΠ° | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΡΠΌΡ | ΠΠ°ΡΡΠΈΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΡΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠΎΠΉ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Ρ ΠΎΡΠΎΡΠΎ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠΊΡΠ°Π½Π°. |
ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π² Π²ΠΈΠ΄Π΅ ΡΠΏΠΈΡΠΊΠ° | Π£Π·Π½Π°ΠΉΡΠ΅, ΠΊΠ°ΠΊ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅. |
Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² | Π£Π·Π½Π°ΠΉΡΠ΅, ΠΊΠ°ΠΊ ΠΈ Π³Π΄Π΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΡ . |
Π Π°Π±ΠΎΡΠ° Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ | Π£Π·Π½Π°ΠΉΡΠ΅, ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Π·Π°ΠΏΠΈΡΡ Π² Π½ΠΈΡ , Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ ΠΏΠ΅ΡΠ΅ΡΠ½Π΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π²Π°ΠΌ ΠΏΠ°ΠΏΠΎΠΊ. |
ΠΡΠ΅ Π½Π°ΡΠΈ ΠΎΠ±ΡΡΠ°ΡΡΠΈΠ΅ ΠΊΡΡΡΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π΄Π»Ρ ΠΎΠΏΡΡΠ½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΎΡΠ²Π°ΠΈΠ²Π°ΡΡΠΈΡ Windows 10. ΠΡΠ»ΠΈ Π²Ρ β Π½ΠΎΠ²ΠΈΡΠΎΠΊ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ Π½Π°ΡΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
ΠΠ°ΡΠΈΠ½Π°ΡΡΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ
ΠΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΠ, ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΡ ΠΠ°ΠΉΠΊΡΠΎΡΠΎΡΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ² Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π»Ρ Windows 10.
ΠΡΠ»ΠΈ Π²Π°ΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ·ΡΠΊΡ C#, Visual Studio ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Windows, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ.
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ:
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°:
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ ΠΈΠ·ΡΡΠΈΠ»ΠΈ Π½Π°ΡΠΈ ΠΎΠ±ΡΡΠ°ΡΡΠΈΠ΅ ΠΊΡΡΡΡ ΠΈΠ»ΠΈ Π²Π°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΎΡ Π²Π°ΡΡΠ²Π°ΡΡ, Π·Π°ΠΉΠΌΠΈΡΠ΅ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΡΠΌ ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π°ΡΠ΅ΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠΎΡ ΠΊΡΠ°ΡΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ.
ΠΠ±Π»Π°ΡΡΡ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|
ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ | ΠΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Windows 10 Π½Π°ΡΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡΡΡ Π½ΠΎΠ²ΡΠΌΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌΠΈ. ΠΡΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΡΠ½ΠΊΡΠΈΡΡ ΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΠΈΡΠΊΠΈ Π½ΠΎΠ²ΡΡ API. ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ Π²ΡΠΏΡΡΠΊΠ΅ Windows 10 |
ΠΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ | ΠΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π² ΡΡΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Ρ Π² ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ ΡΠ·ΡΠΊΠ° ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ XAML ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ²ΠΎΠ΅ΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π½Π°ΡΠ½ΠΈΡΠ΅ Π·Π΄Π΅ΡΡ: ΠΡΠ½ΠΎΠ²Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ UWP |
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ | ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ± ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ Windows 10 ΠΈΠ»ΠΈ Π²Ρ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Ρ Π² ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ UWP, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ ΡΡΠΈΠΌΠΈ ΡΠ°Π·Π΄Π΅Π»Π°ΠΌΠΈ Π½Π°ΡΠ΅ΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ: Π€ΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ UWP Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎ API Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Windows 10 Π²Ρ ΠΎΠ΄ΡΡ Π² Π½Π°Π±ΠΎΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: ΠΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΈΠΌΠ΅Π½ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Windows (UWP) Π€Π°ΠΉΠ» ΠΈ ΡΡ Π΅ΠΌΡ XML |
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈΠ³Ρ | ΠΡΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΈΠ³Ρ Π΄Π»Ρ Windows ΠΈ Xbox. Π‘ΡΠ΄Π° Π²ΠΊΠ»ΡΡΠ΅Π½Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΉ DirectX ΠΈ Xbox. ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ³Ρ |
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ | ΠΡΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Windows Store, Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ ΡΠ΅Π½ΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΎΠΉ, ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ Π²ΠΎΠ²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² Windows Store |
ΠΡΡΠ³ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π² Windows 10, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΡΠΌΠ΅ΡΠ°Π½Π½ΠΎΠΉ ΡΠ΅Π°Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π½Π°Π±ΠΎΡΠ°ΠΌΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ². ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Ρ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΡΡΠΈΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ Ρ ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ:
ΠΠ°ΠΊ ΠΌΡ Π΄Π΅Π»Π°Π»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ Windows 10 Ρ Fluent Design (UWP/C#)
ΠΡ Π² ivi Π΄Π°Π²Π½ΠΎ ΡΠΎΠ±ΠΈΡΠ°Π»ΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ Windows 10 (ΠΊΠΎΡΠΎΡΠΎΠ΅ Π΄Π»Ρ ΠΠ ΠΈ ΠΏΠ»Π°Π½ΡΠ΅ΡΠΎΠ²). ΠΡ Ρ ΠΎΡΠ΅Π»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ ΡΠ΄Π°ΠΊΠΈΠΌ Β«ΡΡΡΠ½ΡΠΌΒ» ΡΠ³ΠΎΠ»ΠΊΠΎΠΌ Π΄Π»Ρ ΠΎΡΠ΄ΡΡ Π°. Π ΠΏΠΎΡΡΠΎΠΌΡ Π°Π½ΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π½Π΅Π΄Π°Π²Π½ΠΎ Microsoft-ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ fluent design ΠΏΡΠΈΡΠ»Π°ΡΡ Π½Π°ΠΌ ΠΎΡΠ΅Π½Ρ ΠΊΡΡΠ°ΡΠΈ.
ΠΠΎ Ρ Π½Π΅ Π±ΡΠ΄Ρ Π·Π΄Π΅ΡΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΏΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌ Microsoft-ΠΎΠΌ Π΄Π»Ρ fluent design-Π° (Acrylic, Reveal, Connected-Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΈ Π΄Ρ.), Ρ ΠΎΡΡ ΠΌΡ ΠΈΡ , ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠΎΠΆΠ΅. Π‘ Π½ΠΈΠΌΠΈ Π²ΡΡ ΠΏΡΠΎΡΡΠΎ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΠΎ β Π±Π΅ΡΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΠΏΠΎΠ»ΡΠ·ΡΠΉΡΡ.
ΠΠΎ ΠΏΡΠΈΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΡ ΡΡ ΠΎΠ΄ΠΈΡΡ Ρ ΠΏΡΠΎΡΠΎΡΠ΅Π½Π½ΠΎΠΉ Π΄ΠΎΡΠΎΠΆΠΊΠΈ. ΠΠΎΡΡΠΎΠΌΡ Ρ Π»ΡΡΡΠ΅ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΏΡΠΎ ΡΠΎ, ΠΊΠ°ΠΊ ΠΌΡ Π΄Π΅Π»Π°Π»ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΡΡΠ°Π²ΠΈΠ» Π½Π°ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Ρ Π»ΠΎΠΏΠΎΡ. ΠΠΎΡ ΡΠ°ΠΊΠΎΠΉ:
ΠΠ΄Π΅Ρ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ depth ΠΈ motion ΠΈΠ· fluent design system. Π¦Π΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΊΠ°ΠΊ Π±Ρ ΡΠ»Π΅Π³ΠΊΠ° ΠΏΡΠΈΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅ΡΡΡ Π½Π°Π΄ΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΎΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ. ΠΡΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ Π·Π° ΡΡΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΈ ΡΠ΅Π½ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠΊΡΠΎΠ»Π»Π°.
ΠΠΎΠ½ΡΡΠΎΠ» FlipView ΡΡΠ°Π·Ρ Π½Π΅ ΠΏΠΎΠ΄ΠΎΡΡΠ», Ρ.ΠΊ. ΠΎΠ½ Π½Π΅ ΡΠΌΠ΅Π΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΊΡΡΠΎΡΠΊΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² (ΠΌΡ ΠΈΡ Π½Π°Π·ΡΠ²Π°Π΅ΠΌ Β«ΡΡΠ°ΠΌΠΈΒ»). Π ΠΌΡ Π½Π°ΡΠ°Π»ΠΈ ΠΏΠΎΠΈΡΠΊΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΡΡΡ 1. ΠΡΠΎΠ±ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GridView
ΠΠΎΠ³ΠΈΡΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡΠ»ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ GridView. Π§ΡΠΎΠ±Ρ Π²ΡΡΡΡΠΎΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ Π·Π°Π΄Π°ΡΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ItemsPanel Π·Π°Π΄Π°ΡΠΌ:
Π§ΡΠΎΠ±Ρ ΡΠ΅Π½ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠ²ΠΎΠΉΡΡΠ²Π° ScrollViewer-Π° Π² ΡΠ°Π±Π»ΠΎΠ½Π΅ GridView:
ΠΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π΄Π΅ΡΡ.
ΠΡΠΎΠ΄Π΅ Π²ΡΡ ΠΎΠΊ, Π½ΠΎ Π΅ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
GridView. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° 1. ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π° Π½Π° Π²ΡΡ ΡΠΈΡΠΈΠ½Ρ ΡΠΊΡΠ°Π½Π°
ΠΠΎ Π·Π°Π΄ΡΠΌΠΊΠ΅ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠΎΠ² Π½Π°Ρ ΠΊΠΎΠ½ΡΡΠΎΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡΠ½ΡΡΡΡΡ Π½Π° Π²ΡΡ ΡΠΈΡΠΈΠ½Ρ ΠΎΠΊΠ½Π°. Π‘Π°ΠΌΠΎ ΠΏΠΎ ΡΠ΅Π±Π΅ ΡΡΠΎ Π½Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°. ΠΠΎ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Π° Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡ Π²ΡΠ΅Ρ Π΅Π³ΠΎ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² (Items):
ΠΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ GridView ΡΠ°ΠΊΠΎΠ³ΠΎ Π½Π΅ ΡΠΌΠ΅Π΅Ρ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΡ ΠΏΠΎΠ΄ΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π° AdaptiveGridView ΠΈΠ· UWPToolkit:
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠ°Ρ UWPToolkit.
ΠΡΠΎΠ΄Π΅ Π²ΡΡ ΠΎΠΊ, ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠΎβ¦
GridView. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° 2. ΠΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° item-ΠΎΠ² ΡΠ΅ΠΊΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΡ ΠΎΠ΄ΠΈΡ ΠΈΠ· ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ
ΠΡΠΎΠ±Π΅Π½Π½ΠΎ ΡΠΈΠ»ΡΠ½ΠΎ ΡΡΡΠ΅ΠΊΡ Π·Π°ΠΌΠ΅ΡΠ΅Π½ ΠΏΡΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠΊΠ½Π° (ΠΈΠ·-Π·Π° ΡΠ΅Π·ΠΊΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ²). Π Π΅ΡΡ ΠΏΡΠΈ ΠΏΡΠΎΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΡ HorizontalOffset.
ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ΅ΡΠΈΡΡ ΠΏΠΎΠΏΡΠΎΡΠΈΠ² GridView ΠΏΡΠΎΡΠΊΡΠΎΠ»Π»ΠΈΡΡΡΡ ΠΊ Π½ΡΠΆΠ½ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ:
ΠΠΎ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΎΠΊΠ½Π°. ΠΡΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠΊΠ½Π° ΡΡΠΎ ΡΠ°ΡΡΠΎ Π΄Π°ΡΡ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. Π‘ΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΠΏΡΠΈΡΠΈΠ½Π° Π² ΡΠΎΠΌ, ΡΡΠΎ Π½ΠΎΠ²ΠΎΠ΅ ΡΠ°ΡΡΡΠΈΡΠ°Π½Π½ΠΎΠ΅ Π½Π°ΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ HorizontalOffset ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΈ Π²ΡΡ ΠΎΠ΄ΠΈΡ Π·Π° Π³ΡΠ°Π½ΠΈΡΡ ExtentWidth (ΡΠΈΡΠΈΠ½Ρ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° Π²Π½ΡΡΡΠΈ ScrollViewer-Π°). Π Ρ.ΠΊ. GridView ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ UI-Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, ΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΈΡΠΈΠ½Ρ Item-ΠΎΠ² ExtentWidth ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ.
Π ΠΎΠ±ΡΠ΅ΠΌ, Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π°ΠΉΡΠΈ Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ.
ΠΠ° ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΠΈ Π½Π°ΡΠ°ΡΡ ΠΏΠΎΠΈΡΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ° ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠΎ Ρ ΠΎΠΏΠΈΡΡ Π΅ΡΡ ΠΎΠ΄Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΡΡΠΈΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠΌ.
GridView. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° 3. ΠΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ ScrollViewer-Ρ Π»ΠΎΠΌΠ°ΡΡ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³ ΠΌΡΡΠΊΠΎΠΉ
ΠΡ Ρ ΠΎΡΠΈΠΌ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠ»ΡΡΠΈΠΊΠΎ ΠΌΡΡΠΊΠΈ Π²ΡΠ΅Π³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΠΎ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³ ΠΏΠΎ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ. ΠΡΠ΅Π³Π΄Π°. ΠΠΎ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΠΈ.
ΠΠΎ Π΅ΡΠ»ΠΈ ΠΌΡ ΡΡΠ°Π²ΠΈΠΌ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ GridView Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠΊΡΡΡΠΊΠΎΠΉ, ΡΠΎ Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠΉΡΡ Π² Π΅Π³ΠΎ Π½Π΅Π΄ΡΠ°Ρ ScrollViewer Π·Π°Ρ Π²Π°ΡΡΠ²Π°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΡ ΠΊΠΎΠ»ΡΡΠΈΠΊΠ° ΠΌΡΡΠΊΠΈ Π½Π° ΡΠ΅Π±Ρ ΠΈ Π½Π΅ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π²ΡΡΠ΅. Π ΠΈΡΠΎΠ³Π΅, Π΅ΡΠ»ΠΈ ΠΊΡΡΡΠΎΡ ΠΌΡΡΠΊΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π°Π΄ Π½Π°ΡΠΈΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΠΌ-Π»ΠΈΡΡΠ°Π»ΠΊΠΎΠΉ, ΡΠΎ ΠΊΠΎΠ»ΡΡΠΈΠΊΠΎ ΠΌΡΡΠΊΠΈ Π΄Π΅Π»Π°Π΅Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΊΡΠΎΠ»Π» Π² Π½ΡΠΌ. ΠΡΠΎ Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΈ Π·Π°ΠΏΡΡΡΠ²Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ:
Π Π΅ΡΠ΅Π½ΠΈΠΉ Ρ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π΄Π²Π°:
Touch screen ΡΠ΅ΡΡΡΡ Π½Π΅ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΠΈ ΠΌΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΠ»ΠΈ ΠΏΠΎΠΈΡΠΊ Π±ΠΎΠ»Π΅Π΅ Ρ ΠΎΡΠΎΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΡΡΡ 2. Carousel ΠΈΠ· UWPToolkit
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠ°Π» ΠΊΠΎΠ½ΡΡΠΎΠ» Carousel ΠΈΠ· UWPToolkit. Π‘ΠΎ Π²ΡΠ΅Ρ ΡΡΠΎΡΠΎΠ½ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ ΠΈ ΠΏΠΎΠ·Π½Π°Π²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ». Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ Π²ΡΠ΅ΠΌ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ.
ΠΠ½ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ Π·Π°ΠΊΡΡΠ²Π°Π» Π½Π°ΡΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠΈ. ΠΠΎ Π² ΠΈΡΠΎΠ³Π΅ ΡΠΎΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ΄ΠΎΡΡΠ»:
Π ΠΎΠ±ΡΠ΅ΠΌ, ΠΎΡ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΠΌΡ ΡΠΎΠΆΠ΅ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ. ΠΡΠ»ΠΈ ΡΠΆ ΡΡΠ°ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ, ΡΠΎ Π±ΡΠ΄Π΅ΠΌ Π΄Π΅Π»Π°ΡΡ ΠΏΠΎ ΡΠΌΡ.
ΠΡΡΡ 3. ΠΠ°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
ΠΠ΅Π»Π°Π΅ΠΌ Β«TOUCH ONLYΒ» ScrollViewer
ΠΠ°ΠΏΠΎΠΌΠ½Ρ, ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ScrollViewer ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ Ρ ΠΎΡΠΈΠΌ, ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½ Π·Π°Ρ Π²Π°ΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ ΠΎΡ ΠΊΠΎΠ»ΡΡΠΈΠΊΠ° ΠΌΡΡΠΊΠΈ (ΡΠΌ. Π²ΡΡΠ΅ ΡΠ°Π·Π΄Π΅Π» Β«GridView. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° 3Β»).
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ· Carousel Π½Π°ΠΌ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ, Ρ.ΠΊ. ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π½Π° UI-ΠΏΠΎΡΠΎΠΊΠ΅, Π° ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π΄Π»Ρ UWP-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ β ΡΡΠΎ Composition-Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ. ΠΡ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΠ²ΡΡΠ½ΡΡ Storyboard-ΠΎΠ² Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ Composition-ΠΏΠΎΡΠΎΠΊΠ΅ ΠΈ Π·Π° ΡΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ 60 ΠΊΠ°Π΄ΡΠΎΠ²/ΡΠ΅ΠΊ Π΄Π°ΠΆΠ΅ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° UI ΠΏΠΎΡΠΎΠΊ ΡΠ΅ΠΌ-ΡΠΎ Π·Π°Π½ΡΡ.
ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π°ΡΠ΅ΠΉ Π·Π°Π΄Π°ΡΠΈ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ InteractionTracker β ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ touch-Π²Π²ΠΎΠ΄ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° Π΄Π»Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ. Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΡΠΈΡΡΡΡ Π΄Π΅Π»Π°ΡΡ β ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ UI-ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠ°Π»ΡΡΠ° ΠΏΠΎ ΡΠΊΡΠ°Π½Ρ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, Π½Π°ΠΌ ΠΏΡΠΈΠ΄ΡΡΡΡ Π½Π°ΡΠ°ΡΡ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠ°ΡΡΠΎΠΌΠ½ΠΎΠ³ΠΎ ScrollViewer-Π°. Π’Π°ΠΊ ΠΈ Π½Π°Π·ΠΎΠ²ΡΠΌ Π΅Π³ΠΎ β TouchOnlyScrollViewer:
ΠΠ΄Π΅ΡΡ ΠΏΠΎΠΊΠ° Π²ΡΡ ΡΡΡΠΎΠ³ΠΎ ΠΏΠΎ Π΄ΠΎΠΊΠ΅ ΠΎΡ Mircosoft. Π Π°Π·Π²Π΅ ΡΡΠΎ Π²ΡΠ·ΠΎΠ² TryRedirectForManipulation ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΎΠ±Π΅ΡΠ½ΡΡΡ Π² try-catch ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΊΠΈΠ΄Π°Π΅Ρ Π²Π½Π΅Π·Π°ΠΏΠ½ΡΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ. ΠΡΠΎ ΡΠ»ΡΡΠ°Π΅ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ΅Π΄ΠΊΠΎ (Π½Π°Π²ΡΠΊΠΈΠ΄ΠΊΡ, ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π² 2-5% ΡΠ»ΡΡΠ°Π΅Π²) ΠΈ Π²ΡΡΡΠ½ΠΈΡΡ ΠΏΡΠΈΡΠΈΠ½Ρ Π½Π°ΠΌ Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ. ΠΠΎΡΠ΅ΠΌΡ ΠΎΠ± ΡΡΠΎΠΌ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ Microsoft β ΠΌΡ Π½Π΅ Π·Π½Π°Π΅ΠΌ π
TOUCH ONLY ScrollViewer. Π€ΠΎΡΠΌΠΈΡΡΠ΅ΠΌ HorizontalOffset ΠΈ ΡΠΎΠ±ΡΡΠΈΡ ViewChanging ΠΈ ViewChanged
Π Π°Π· ΠΌΡ Π΄Π΅Π»Π°Π΅ΠΌ ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ ScrollViewer-Π°, ΡΠΎ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ HorizontalOffset ΠΈ ΡΠΎΠ±ΡΡΠΈΡ ViewChanging ΠΈ ViewChanged. ΠΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ callback-ΠΎΠ² InteractionTracker-Π°. ΠΠ»Ρ ΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ InteractionTracker-Π° Π½Π°Π΄ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΡ IInteractionTrackerOwner, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠΈ callback-ΠΈ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ:
ΠΠ»Ρ ΠΏΠΎΠ»Π½ΠΎΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ ΠΏΠΎΠ·Π²ΠΎΠ»Ρ ΡΠ΅Π±Π΅ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ ΠΈΠ· Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ ΠΈ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ InteractionTracker-Π°:
Π‘ΠΎΠ±ΡΡΠΈΠ΅ ViewChanged Π±ΡΠ΄Π΅ΠΌ Π±ΡΠΎΡΠ°ΡΡ ΠΏΠΎ Π²Ρ ΠΎΠ΄Ρ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Idle.
Π‘ΠΎΠ±ΡΡΠΈΠ΅ ViewChanging Π±ΡΠ΄Π΅ΠΌ Π±ΡΠΎΡΠ°ΡΡ ΠΏΠΎ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΡ IInteractionTrackerOwner.ValuesChanged.
Π‘ΡΠ°Π·Ρ ΡΠΊΠ°ΠΆΡ, ΡΡΠΎ ValuesChanged ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡΡΡ, ΠΊΠΎΠ³Π΄Π° InteractionTracker Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΠΈ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Idle. ΠΡΠΎ ΡΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ·ΠΎΠ²Π° TryUpdatePosition Ρ InteractionTracker-Π°. Π Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π±Π°Π³ Π² ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ UWP.
ΠΡ ΡΡΠΎ ΠΆ, Ρ ΡΡΠΈΠΌ ΠΏΡΠΈΠ΄ΡΡΡΡ ΠΌΠΈΡΠΈΡΡΡΡ. ΠΠ»Π°Π³ΠΎ, Π½Π°ΠΌ Π½Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎ β Π² ΠΎΡΠ²Π΅Ρ Π½Π° ValuesChanged Π±ΡΠ΄Π΅ΠΌ Π²ΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡ Π»ΠΈΠ±ΠΎ ViewChanging, Π»ΠΈΠ±ΠΎ ValuesChanged, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ:
TOUCH ONLY ScrollViewer. Snap Points, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ»ΠΈΡΡΡΠ²Π°Π»ΠΎΡΡ ΡΠΎΠ²Π½ΠΎ Π½Π° 1 ΡΠ»Π΅ΠΌΠ΅Π½Ρ
ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ»ΠΈΡΡΡΠ²Π°Π½ΠΈΡ ΡΠΎΠ²Π½ΠΎ Π½Π° 1 ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π΅ΡΡΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ β Β«snap points with inertia modifiersΒ».
Π‘ΠΌΡΡΠ» Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΌΡ Π·Π°Π΄Π°ΡΠΌ ΡΠΎΡΠΊΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠ°Π²ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ²Π°ΠΉΠΏΠ° Π½Π° touch ΡΠΊΡΠ°Π½Π΅. Π Π²ΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ Π±Π΅ΡΡΡ Π½Π° ΡΠ΅Π±Ρ InteractionTracker. ΠΠΎ ΡΡΡΠΈ ΠΎΠ½ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠΎΡΠ»Π΅ ΡΠ²Π°ΠΉΠΏΠ° ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»Π° ΠΏΠ»Π°Π²Π½ΠΎ ΠΈ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠΎΠ²Π½ΠΎ Π² ΡΠΎΠΌ ΠΌΠ΅ΡΡΠ΅, Π³Π΄Π΅ Π½Π°ΠΌ Π½Π°Π΄ΠΎ.
ΠΠ°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΡΡ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΡΠΎΠΉ, ΡΡΠΎ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π° Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΡ Π½Π΅ Ρ ΠΎΡΠΈΠΌ Π΄Π°Π²Π°ΡΡ ΡΠΊΡΠΎΠ»Π»ΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π·Π° ΡΠ°Π·, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Β«ΠΊΡΡΡΠ°Π½ΡΠ»Β» Π½Π°ΡΡ Π»ΠΈΡΡΠ°Π»ΠΊΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±ΡΡΡΡΠΎ.
ΠΠΎΡΡΠΎΠΌΡ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΈ snap-point-Π° β Β«Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π³ Π²Π»Π΅Π²ΠΎΒ», Β«Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π³ Π²ΠΏΡΠ°Π²ΠΎΒ» ΠΈ Β«ΠΎΡΡΠ°ΡΡΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈΒ». Π ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΎΠ»ΠΈΡΡΡΠ²Π°Π½ΠΈΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ.
Π ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ snap point-Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ, ΠΌΡ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΡΠ΅ΠΌΡΠΌΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π·Π°Π²ΠΎΠ΄ΠΈΠΌ PropertySet Ρ ΡΡΠ΅ΠΌΡ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ:
Π Π² ΡΠΎΡΠΌΡΠ»Π°Ρ Π΄Π»Ρ Condition ΠΈ RestingValue ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΈΠ· ΡΡΠΎΠ³ΠΎ PropertySet:
ΠΠΎΡΡΠΎΠΌΡ Π² ΡΠΎΡΠΌΡΠ»Π°Ρ Π΄Π»Ρ Contition ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΡ 0.25 ΠΈ 0.75, ΡΡΠΎΠ±Ρ Π΄Π°ΠΆΠ΅ Β«ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΉΒ» ΡΠ²Π°ΠΉΠΏ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠ» ΠΏΡΠΎΠΊΡΡΡΠΊΡ ΠΊ ΡΠΎΡΠ΅Π΄Π½Π΅ΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ.
ΠΡ ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ ΠΊ ΡΠΎΡΠ΅Π΄Π½Π΅ΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π±ΡΠ΄Π΅ΠΌ Π²ΡΠ·ΡΠ²Π°ΡΡ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² snap point-ΠΎΠ²:
ΠΠ°Π½Π΅Π»Ρ Ρ UI-Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠ°Π³ΠΎΠΌ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΠΎΡΡΡΠΎΠΈΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π½Π°ΡΠ΅Π³ΠΎ TouchOnlyScrollerViewer-Π° ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΉ ItemsControl.
ΠΠ»Ρ ΡΠΏΡΠ°Π²ΠΊΠΈ. UI-Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ β ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½ΡΡΠΎΠ»-ΡΠΏΠΈΡΠΎΠΊ Π²ΠΌΠ΅ΡΡΠΎ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, 1000 Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅, ΡΡΠΎ Π²ΠΈΠ΄Π½Ρ Π½Π° ΡΠΊΡΠ°Π½Π΅. Π ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΈΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π°, ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Ρ ΠΊ Π½ΠΎΠ²ΡΠΌ Π΄Π°ΡΠ°-ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΈ Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΡΠΏΠΈΡΠΊΠ΅.
Π’.ΠΊ. Π²ΡΡ-ΡΠ°ΠΊΠΈ ΠΎΡΠ΅Π½Ρ Π½Π΅ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ²ΠΎΡ UI-Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, ΡΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ ΠΌΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΏΠΎΠΏΡΡΠ°Π»ΠΈΡΡ ΡΠ΄Π΅Π»Π°ΡΡ β ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΏΠ°Π½Π΅Π»Ρ ItemsStackPanel.
Π₯ΠΎΡΠ΅Π»ΠΎΡΡ ΠΏΠΎΠ΄ΡΡΠΆΠΈΡΡ Π΅Ρ Ρ Π½Π°ΡΠΈΠΌ TouchOnlyScrollerViewer-ΠΎΠΌ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ Π½Π°ΠΉΡΠΈ Π½ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΎΠ± Π΅Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅, Π½ΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠΎ ΡΡΠ΄ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ» ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ, ΡΡΠΎ ItemsStackPanel ΠΈΡΠ΅Ρ ScrollViewer Π² Visual Tree Π² ΡΠΏΠΈΡΠΊΠ΅ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². Π ΡΠΏΠΎΡΠΎΠ±Π° ΡΡΠΎ ΠΊΠ°ΠΊ-ΡΠΎ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΡΡΠΎΠ±Ρ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ScrollViewer-Π° ΠΎΠ½ΠΎ ΠΈΡΠΊΠ°Π»ΠΎ Π½Π°Ρ, ΠΌΡ Π½Π΅ Π½Π°ΡΠ»ΠΈ.
ΠΡ ΡΡΠΎ ΠΆ. ΠΠ½Π°ΡΠΈΡ ΠΏΠ°Π½Π΅Π»Ρ Ρ UI-Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΏΡΠΈΠ΄ΡΡΡΡ Π²ΡΡ-ΡΠ°ΠΊΠΈ Π΄Π΅Π»Π°ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ. ΠΡΡΡΠ΅Π΅, ΡΡΠΎ ΡΠ΄Π°Π»ΠΎΡΡ Π½Π°ΠΉΡΠΈ Π½Π° ΡΡΡ ΡΠ΅ΠΌΡ β ΡΡΠΎ Π²ΠΎΡ ΡΡΠΎΡ ΡΠΈΠΊΠ» ΡΡΠ°ΡΠ΅ΠΉ Π°ΠΆ 11-Π»Π΅ΡΠ½Π΅ΠΉ Π΄Π°Π²Π½ΠΎΡΡΠΈ: ΡΠ°Π·, Π΄Π²Π°, ΡΡΠΈ, ΡΠ΅ΡΡΡΠ΅. ΠΠ½, ΠΏΡΠ°Π²Π΄Π°, ΠΏΡΠΎ WPF, Π° Π½Π΅ ΠΏΡΠΎ UWP, Π½ΠΎ ΠΈΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΎΡΠ΅Π½Ρ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ. ΠΠΉ ΠΌΡ ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ.
Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠ°:
ΠΡΠ΅ΠΌ ΡΠΎΠ±ΡΡΠΈΡ Tapped, ΠΏΠΎΡΠ΅ΡΡΠ²ΡΠΈΠ΅ΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ touch-Π²Π²ΠΎΠ΄Π° Π² composition-ΠΏΠΎΡΠΎΠΊ
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ ΡΡΠΎ ΡΠΎΠ±ΡΠ°Π»ΠΈ Π²ΠΌΠ΅ΡΡΠ΅ Π²ΡΠΊΡΡΠ»Π°ΡΡ Π΅ΡΡ ΠΎΠ΄Π½Π° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°. ΠΠ½ΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°ΠΏΠ°Π΅Ρ ΠΏΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ Π²Π½ΡΡΡΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π° Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠΎΠ³ΠΎ, ΠΏΠΎΠΊΠ° touch Π²Π²ΠΎΠ΄ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ Π² InteractionTracker. ΠΡΠΎ ΡΠ»ΡΡΠ°Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³ ΠΏΠΎ ΠΈΠ½Π΅ΡΡΠΈΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΎΠ±ΡΡΠΈΡ PointerPressed, PointerReleased ΠΈ Tapped ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΡΠ»ΡΡΠ°ΡΡΡΡ. Π ΡΡΠΎ Π½Π΅ Π½Π°Π΄ΡΠΌΠ°Π½Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Ρ.ΠΊ. ΠΈΠ½Π΅ΡΡΠΈΡ Ρ InteractionTracker-Π° Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π΄ΠΎΠ»Π³Π°Ρ. Π Π΄Π°ΠΆΠ΅, ΠΊΠΎΠ³Π΄Π° Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³ ΠΏΠΎΡΡΠΈ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΡΡ, ΠΏΠΎ ΡΠ°ΠΊΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠ΅ Π΄ΠΎΡΠΊΡΠΎΠ»Π»ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ.
Π ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°ΡΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ β ΠΎΠ½ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ, ΡΡΠΎ ΠΏΠΎ ΡΠ°ΠΏΡ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΠ° Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠ»ΡΠΌΠ°. ΠΠΎ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ.
ΠΠΎΡΡΠΎΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΏ ΠΏΠΎ ΠΏΠ°ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΎΡ InteractionTracker-Π°:
ΠΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠΎ, ΠΏΡΠ°Π²Π΄Π°, Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ·Π½Π°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π±ΡΠ» ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ½ ΡΠ°ΠΏ. Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ Π½Π΅ ΠΊΡΠΈΡΠΈΡΠ½ΠΎ, Ρ.ΠΊ. Π½Π°ΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΏΠΎΡΡΠΈ Π²ΡΡ Π²ΠΈΠ΄ΠΈΠΌΡΡ ΡΠΈΡΠΈΠ½Ρ TouchOnlyScrollViewer-Π°. ΠΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠΎΡ, ΡΡΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π±Π»ΠΈΠΆΠ΅ ΠΊ ΡΠ΅Π½ΡΡΡ. Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² β ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎ, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ. ΠΠΎΠΊΠ° Π½ΠΈΠΊΡΠΎ Π΄Π°ΠΆΠ΅ Π½Π΅ Π·Π°ΠΌΠ΅ΡΠΈΠ», ΡΡΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΠ°ΠΏ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ Π½Π΅ ΡΡΠ΄Π°. ΠΡΠΎ Π½Π΅ ΡΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠΉΠΌΠ°ΡΡ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π·Π½Π°Π΅ΡΡ ΠΏΡΠΎ ΡΡΠΎ π
Π₯ΠΎΡΡ Π² ΠΎΠ±ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, ΡΡΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ Π΅ΡΡ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΠ»Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π±Ρ Π³ΠΎΡΠΎΠ΄ΠΈΡΡ Π΅ΡΡ ΠΈ ΡΠ²ΠΎΠΉ hit testing. ΠΠΎ ΠΈ Π΅Π³ΠΎ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ, Ρ.ΠΊ. ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠ°ΠΏΠ° Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½Ρβ¦
ΠΠΎΠ½ΡΡ. Expression-Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π΄Π»Ρ opacity, scale ΠΈ ΡΠ΅Π½Π΅ΠΉ. Π§ΡΠΎΠ±Ρ ΡΡΠ°Π»ΠΎ, Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΠΊΡΠ°ΡΠΈΠ²ΠΎ
Π, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π²ΠΈΡΠ΅Π½ΠΊΠ° Π½Π° ΡΠΎΡΡΠ΅ β ΡΠΎ, ΡΠ°Π΄ΠΈ ΡΠ΅Π³ΠΎ Π²ΡΡ ΡΡΠΎ ΠΈ Π·Π°ΡΠ΅Π²Π°Π»ΠΎΡΡ. ΠΠΎ ΠΌΠ΅ΡΠ΅ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π° ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ, ΡΠ΅Π½Ρ ΠΈ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΡΡΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΡΠ΅Π½ΡΡΠ΅ β ΡΠ»Π΅Π³ΠΊΠ° ΠΏΡΠΈΠΏΠΎΠ΄Π½ΡΡ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Expression-Π°Π½ΠΈΠΌΠ°ΡΠΈΡΠΌΠΈ. ΠΠ½ΠΈ ΡΠΎΠΆΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΡΡΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Composition, ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅ ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ ΠΏΠΎΠ΄ΡΠΎΡΠΌΠ°ΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠΈ Π·Π°Π½ΡΡΠΎΡΡΠΈ UI-ΠΏΠΎΡΠΎΠΊΠ°.
Π‘ΠΎΠ·Π΄Π°ΡΡΡΡ ΠΎΠ½ΠΈ ΡΠ°ΠΊ. ΠΠ»Ρ ΡΠ²ΠΎΠΉΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΌΡ Π·Π°Π΄Π°ΡΠΌ ΡΠΎΡΠΌΡΠ»Ρ (expression), ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΎΡ ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ Π΄ΡΡΠ³ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ². Π€ΠΎΡΠΌΡΠ»Π° Π·Π°Π΄Π°ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
ΠΡΡ ΠΈΡ
ΠΏΡΠ΅Π»Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΈΡ
ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΠΈ. ΠΡΠΈΠΌ ΠΌΡ ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ:
ΠΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ Π΄Π»Ρ Π²ΡΠ΅Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· InteractionTracker-Π° Π² ΠΏΠΈΠΊΡΠ΅Π»ΡΡ . ΠΠ° ΠΎΡΠ½ΠΎΠ²Π΅ Π½Π΅Π³ΠΎ ΠΌΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΠΎΡΠ΅ΡΠ½Π΅Π³ΠΎ UI-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΡΠ³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ progress, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ 0 Π΄ΠΎ 1. Π ΡΠΆΠ΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ progress-Π° Π±ΡΠ΄Π΅ΠΌ Π²ΡΡΠΈΡΠ»ΡΡΡ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°.
ΠΡΠ°ΠΊ, ΡΠΎΡΠΌΠΈΡΡΠ΅ΠΌ _progressExpression ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΎ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π»ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:
Π ΡΠΎΠ·Π΄Π°ΡΠΌ PropertySet ΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΠΌ progress, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π²ΡΡΠΈΡΠ»ΡΡΡΡΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π½Π°ΡΠ΅Π³ΠΎ _progressExpression. ΠΡΠΎ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠΎΠ³ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΡΡΠΎΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ:
Π’Π΅ΠΏΠ΅ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° progress ΡΠΎΠ·Π΄Π°ΡΠΌ ΡΠΆΠ΅ Π½Π°ΡΡΠΎΡΡΠΈΠ΅ Β«Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠ΅Β» Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΠΎΠ»ΡΡΠΈΠΈ (ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Lerp ΠΈ ColorLerp). ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Expression-Π°Π½ΠΈΠΌΠ°ΡΠΈΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
ΠΡ ΠΈ Π΄Π»Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ²ΠΎΠΉΡΡΠ² ΡΠΎΡΠΌΡΠ»Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½Ρ.
ΠΠΏΠΈΠ»ΠΎΠ³
ΠΠ° ΡΡΠΎΠΌ Π²ΡΡ. Π‘ΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎΡΡΠΈ ΡΠ°Π΄ΠΈ, Π½Π°Π΄ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΡΡΠΎΡ ΠΊΠΎΠ½ΡΡΠΎΠ» ΠΎΠΊΠ°Π·Π°Π»ΡΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉ, ΡΡΡΡ Π»ΠΈ Π½ΠΈ ΡΠ°ΠΌΡΠΌ ΡΠ»ΠΎΠΆΠ½ΡΠΌ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΡΡΠ°Π»ΡΠ½ΠΎΠΉ fluent design Π΄Π°Π»ΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ π
β ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΡΠΈΡΡΡΠΏΠ°Ρ ΠΊ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π΄Π»Ρ Windows 10
Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π²ΡΠ΅Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Ρ Windows 10, ΠΈΠ»ΠΈ ΡΠ»ΡΡΡΠ°ΠΉΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½ΠΎΠ²ΡΡ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
Π‘Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Π΄Π»Ρ Windows 10.
Windows 10 ΠΈ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Windows ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ Π²ΡΠ³Π»ΡΠ΄ΡΡ Π½Π° Π²ΡΠ΅Ρ ΡΠΈΠΏΠ°Ρ ΡΡΡΡΠΎΠΉΡΡΠ² Ρ Windows, ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ°
Visual Studio Community ΠΈ ΠΏΠ°ΠΊΠ΅Ρ SDK Π΄Π»Ρ Windows 10 ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΏΡΠΈΡΠ΅ΠΌ ΡΡΠΎ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ!
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠ²Π»ΡΠ΅ΡΠ΅ΡΡ Π»ΠΈ Π²Ρ ΠΎΠΏΡΡΠ½ΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΡΠ²ΠΎΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠΌΠΎΡΡ ΠΏΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ Windows 10 ΠΈ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΠ΅Π±Π½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
Π£ΡΠ΅Π±Π½ΠΈΠΊΠΈ
ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠΉΡΠΈ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΠΎΠ΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ? ΠΡΠΈ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ.
ΠΡΠΈΠΌΠ΅ΡΡ
ΠΠ°ΡΡΠΈΡΠ΅ΡΡ Π½Π° Π»ΠΈΡΠ½ΠΎΠΌ ΠΎΠΏΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠΉ Windows 10 ΠΈ ΠΎΡΠ΅Π½ΠΈΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² API Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ.
ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
Π Π°ΡΡΠΈΡΡΡΠ΅ ΡΠ²ΠΎΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈ ΠΈΠ·ΡΡΠΈΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Windows 10.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Hello, World! Π² C++/CX
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ·ΡΠΊ C++/CX. ΠΠΎΡΠΏΠΎΡΠ°ΡΠΈΡ ΠΠ°ΠΉΠΊΡΠΎΡΠΎΡΡ Π²ΡΠΏΡΡΡΠΈΠ»Π° C++/WinRT. ΠΡΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ°ΠΌ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡ ΡΠ·ΡΠΊΠ° C++17 Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² API ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows (WinRT). ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ± ΡΡΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ C++/WinRT.
Π Microsoft Visual Studio Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ C++/CX Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows 10 Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ Π½Π° ΡΠ·ΡΠΊΠ΅ XAML.
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Visual Studio Community 2019. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π΄ΡΡΠ³ΡΡ Π²Π΅ΡΡΠΈΡ Visual Studio, ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΈΠ½Π°ΡΠ΅.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° C++ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π΄Π»Ρ Windows
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΎΠΏΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Windows Π½Π° C++, ΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ UWP Π²Π°ΠΌ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΠΏΠΎΠΊΠ°ΠΆΡΡΡΡ Ρ ΠΎΡΠΎΡΠΎ Π·Π½Π°ΠΊΠΎΠΌΡΠΌΠΈ, Π° Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΡΡΠ΅Π±ΡΡΡ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ.
Π‘Ρ ΠΎΠ΄ΡΡΠ²ΠΎ Ρ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π½Π° C++
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ STL, CRT (Π·Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡΠΌΠΈ) ΠΈ Π»ΡΠ±ΡΡ Π΄ΡΡΠ³ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ C++, Π΅ΡΠ»ΠΈ ΠΊΠΎΠ΄ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ Windows, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΈΠ· ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows.
ΠΡΠ»ΠΈ Π²Ρ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°ΠΌΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π² Microsoft Visual Studio, ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Blend Π΄Π»Ρ Visual Studio. ΠΡΠ»ΠΈ Π²Ρ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠΈΡΠ΅ΡΠ΅ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π²ΡΡΡΠ½ΡΡ, Π²Ρ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠ΄ XAML.
Π‘ΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Windows ΠΈ Π²Π°ΡΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠΈΠΏΡ.
ΠΡ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ, ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²ΡΠΈΠΊ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Visual Studio.
ΠΠ»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ Π²Π°ΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ°ΠΊ ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Visual C++. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ UWP Π½Π° C++/CX Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π² ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠΉ ΡΡΠ΅Π΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
ΠΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ
ΠΡΠΈΠ½ΡΠΈΠΏΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ UWP ΠΈ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Windows ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π£ΡΡΠ°ΡΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π³ΡΠ°Π½ΠΈΡΡ ΠΎΠΊΠΎΠ½, ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ, Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΡΠ΅ ΠΎΠΊΠ½Π° ΠΈ ΠΏΡΠΎΡΠ΅Π΅. ΠΠ°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΠ°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅. ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Windows ΡΡΠΈΠΌ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ Π½Π°ΡΠ°Π»Π° ΡΡΠ°Π΄ΠΈΠΈ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ XAML. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ Π² ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΄Π»Ρ Windows Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΠ΅ΠΌ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ MFC ΠΈΠ»ΠΈ Win32. Π ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π΅ ΠΊΠΎΠ΄Π°, Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΡ ΠΌΠΎΠ³ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ Π²Π½Π΅ΡΠ½ΠΈΠΌ Π²ΠΈΠ΄ΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π² ΡΠ°ΠΉΠ»Π΅ XAML.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ API ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows Ρ ΡΠ»ΡΡΡΠ΅Π½Π½ΠΎΠΉ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠ΅ΠΉ, Ρ ΠΎΡΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Windows Π΄Π»Ρ ΡΡΠ΄Π° ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Win32.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ C++/CX ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows. C++/CX ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ C++, Π΄Π΅Π»Π΅Π³Π°ΡΡ, ΡΠΎΠ±ΡΡΠΈΡ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΡΡΡΠ»ΠΎΠΊ Π΄Π»Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ C++/CX ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ COM ΠΈ Windows ΡΠΊΡΡΡΡ ΠΎΡ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅: Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΠΏΠΎ ΡΠ·ΡΠΊΡ C++/CX.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π² ΠΏΠ°ΠΊΠ΅Ρ, ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΡΠΈΠΏΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠ΅ΡΡΡΡΠ°Ρ ΠΈ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ (Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΡ, ΠΊΠ°ΠΌΠ΅ΡΠ΅ ΠΈ Ρ. Π΄.).
Π Microsoft Store ΠΈ Windows Phone Store ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ Π΅Π³ΠΎ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΠΈ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΠ½ΠΎ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π΄Π»Ρ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Hello World Π½Π° C++/CX Π΄Π»Ρ Store
ΠΠ°ΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Hello World Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΡΠΈΠ»Π΅ΠΉ ΠΈ ΠΌΠ°ΠΊΠ΅ΡΠ°. ΠΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°Π±Π»ΠΎΠ½ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows. ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows 8.1 ΠΈ Windows Phone 8.1 ΡΠ°Π½Π΅Π΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ Π±ΡΠ»ΠΈ ΡΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² Visual Studio: ΠΎΠ΄ΠΈΠ½ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows, ΠΎΠ΄ΠΈΠ½ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° ΠΈ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ Ρ ΠΎΠ±ΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅ Windows (UWP) Π² Windows 10 ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π²ΡΠ΅Π³ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° Π²ΡΠ΅Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ , Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π½Π° Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΠΈ Π½ΠΎΡΡΠ±ΡΠΊΠ°Ρ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Windows 10, ΡΠ°ΠΊΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ , ΠΊΠ°ΠΊ ΠΏΠ»Π°Π½ΡΠ΅ΡΡ, ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ, ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅Π°Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ Ρ. Π΄.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows Π² Visual Studio.
ΠΠ±ΡΠ΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΡ ΡΠ°ΠΉΠ»Π°Ρ .
ΠΠ±ΡΠ΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΡ Π² ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Visual C++ (C++/CX) ΠΈ ΡΠΏΠΎΡΠΎΠ±Π°Ρ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
Π‘Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π² Visual Studio
Π Visual Studio Π² ΡΡΡΠΎΠΊΠ΅ ΠΌΠ΅Π½Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π€Π°ΠΉΠ» > Π‘ΠΎΠ·Π΄Π°ΡΡ > ΠΡΠΎΠ΅ΠΊΡ.
ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ ΠΠ°Π»Π΅Π΅ ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΈΠΌΡ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠ½ Π±ΡΠ΄Π΅Ρ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ HelloWorld.
ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Π‘ΠΎΠ·Π΄Π°ΡΡ.
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Visual Studio Π²ΠΏΠ΅ΡΠ²ΡΠ΅, ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΊΡΡΡΡΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Ρ Π·Π°ΠΏΡΠΎΡΠΎΠΌ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π Π΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. Π Π΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° β ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΡΠΉ Π·Π°ΠΏΡΡΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· Store. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅. Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠΈΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π Π΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°, Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΠ° ΠΈ Π·Π°ΠΊΡΠΎΠΉΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ.
Π€Π°ΠΉΠ»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΎΠ·Π΄Π°Π½Ρ.
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°Π±ΠΎΡΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΈΠ·ΡΡΠΈΠΌ ΡΠ°ΠΉΠ»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°ΠΉΠ»Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΠ°ΠΉΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ
ΠΡΠ»ΠΈ Π²Ρ ΠΈΠ·ΡΡΠΈΡΠ΅ ΠΊΠΎΠ΄ Π² ΡΠ°ΠΉΠ»Π°Ρ App.xaml.h, App.xaml.cpp Π² ΠΎΠ±ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, ΡΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅, ΡΡΠΎ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΡΠ΅ ΠΊΠΎΠ΄ C++. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π΅ΡΡΡ ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π½Π΅Π΅ Π½Π΅ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π΄Π»Ρ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows, ΠΈΠ»ΠΈ Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Ρ C++/CLI. ΠΠΎΡ ΠΎΠ±ΡΠΈΠ΅ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π² C++/CX:
Π‘ΡΡΠ»ΠΎΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ
ΠΠΎΡΡΠΈ Π²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ Π²ΡΠ΅ ΡΠΈΠΏΡ Π² API Windows (ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ XAML, ΡΡΡΠ°Π½ΠΈΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΡΠ°ΠΌ ΠΊΠ»Π°ΡΡ App, Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π²ΡΠ΅ ΡΠΈΠΏΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ²), ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ ΠΊΠ°ΠΊ ref class. (ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏΠΎΠ² Π² Windows: ΠΊΠ»Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΡΡΡΠΊΡΡΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΡ). ΠΠ»Π°ΡΡ ref ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ°. Π C++/CX Π²ΡΠ΅ΠΌΡ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΈΡ ΡΠΈΠΏΠΎΠ² ΡΠ΅Π³ΡΠ»ΠΈΡΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΡΡΠ΅ΡΠ° ΡΡΡΠ»ΠΎΠΊ (Π° Π½Π΅ ΡΠ±ΠΎΡΠΊΠΈ ΠΌΡΡΠΎΡΠ°), ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΡΠ²Π½ΠΎ ΡΠ΄Π°Π»ΡΡΡ ΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ «ref».
ΠΡΠ΅ ΡΠΈΠΏΡ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ ΠΈ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΠ°ΠΌΠΈΡ ΡΠΈΠΏΠΎΠ² Π² C++ ΡΡΠ°Π½Π΄Π°ΡΡΠ° ISO, ΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄ΠΎΡΡΡΠΏΠ°. ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ public Π΄Π΅Π»Π°Π΅Ρ ΠΊΠ»Π°ΡΡ Π²ΠΈΠ΄ΠΈΠΌΡΠΌ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π²Π½Π΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΈΠΌΠ΅Π½. ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ sealed ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΊΠ»Π°ΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π±Π°Π·ΠΎΠ²ΡΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ. ΠΠΎΡΡΠΈ Π²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ ref Π·Π°ΠΏΠ΅ΡΠ°ΡΠ°Π½Ρ. ΠΠ°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠΎΠ² ΡΠΈΡΠΎΠΊΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ JavaScript Π΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ.
ref new ΠΈ ^ (ΠΊΡΡΡΠΊΠ°)
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΊΠ»Π°ΡΡΠ° ref ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Β«^Β» (Β«ΠΊΡΡΡΠΊΠ°Β»), ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° Β«ref newΒ». ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ «->» ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ C++. ΠΠΎΡΡΡΠΏ ΠΊ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° «::», ΠΊΠ°ΠΊ Π² C++ ΡΡΠ°Π½Π΄Π°ΡΡΠ° ISO.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΈΠΌΡ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ «->», ΡΡΠΎΠ±Ρ Π²ΡΠ·Π²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ².
Π‘Π²ΠΎΠΉΡΡΠ²Π°
ΠΠ»Π°ΡΡ «ref» ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΡΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΡΠ·ΡΠΊΠ°Ρ , ΡΠ²Π»ΡΡΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ-ΡΠ»Π΅Π½Π°ΠΌΠΈ. ΠΠ½ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΠ»Π΅ΠΉ Π² ΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅.
ΠΠ΅Π»Π΅Π³Π°ΡΡ
ΠΠ°ΠΊ ΠΈ Π² ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΡΠ·ΡΠΊΠ°Ρ , Π΄Π΅Π»Π΅Π³Π°Ρ β ΡΡΠΎ ΡΡΡΠ»ΠΎΡΠ½ΡΠΉ ΡΠΈΠΏ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ. ΠΠ΅Π»Π΅Π³Π°ΡΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Ρ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ.
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΠ°Π²Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π¨Π°Π³ 1. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ
Π ΠΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΠ΅Π»Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» MainPage.xaml.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ XAML Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Grid ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ Π·Π°ΠΊΡΡΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΠ΅Π³Π°. Π Π½Π΅ΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ StackPanel Ρ TextBlock, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ; ΡΠ»Π΅ΠΌΠ΅Π½Ρ TextBox, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ; ΡΠ»Π΅ΠΌΠ΅Π½Ρ Button ΠΈ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠ»Π΅ΠΌΠ΅Π½Ρ TextBlock.
ΠΠ° ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠ΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Windows. ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ UWP, Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΡ F5, ΡΡΠΎΠ±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ±ΠΎΡΠΊΡ, ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΡΠ»Π°Π΄ΠΊΠΈ.
Π‘Π½Π°ΡΠ°Π»Π° ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠΊΡΠ°Π½-Π·Π°ΡΡΠ°Π²ΠΊΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΠ° Π½Π΅ΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ (Assets\SplashScreen.scale-100.png) ΠΈ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π² ΡΠ°ΠΉΠ»Π΅ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΡΠΊΡΠ°Π½-Π·Π°ΡΡΠ°Π²ΠΊΡ, ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΡΠΊΡΠ°Π½Π°-Π·Π°ΡΡΠ°Π²ΠΊΠΈ.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΠΊΡΠ°Π½-Π·Π°ΡΡΠ°Π²ΠΊΠ° ΠΈΡΡΠ΅Π·Π½Π΅Ρ, ΠΏΠΎΡΠ²ΠΈΡΡΡ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΠΊΠ° ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Π»ΠΎ ΡΡΠΎ ΡΠΌΠ΅Π΅Ρ, Π½ΠΎ Π²Π°Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ·Π΄ΡΠ°Π²ΠΈΡΡ Ρ ΡΡΠΏΠ΅ΡΠ½ΡΠΌ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows.
Π§ΡΠΎΠ±Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΎΡΠ»Π°Π΄ΠΊΡ ΠΈ Π·Π°ΠΊΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π²Π΅ΡΠ½ΠΈΡΠ΅ΡΡ Π² Visual Studio ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ SHIFT+F5.
Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² TextBox, Π½ΠΎ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Button Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. ΠΠΎΠ·Π΄Π½Π΅Π΅ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΄Π»Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΡ Click, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅.
Π¨Π°Π³ 2. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ
Π ΡΠ°ΠΉΠ»Π΅ MainPage.xaml Π² ΠΊΠΎΠ΄Π΅ XAML ΠΈΠ»ΠΈ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Say Hello Button Π² Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠΌ ΡΠ°Π½Π΅Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ΅ StackPanel.
ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ ΡΠΎΠ±ΡΡΠΈΠ΅ Click. Π ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΠΏΠΎΠ»Π΅ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΠΈΠΌΡ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ Click. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π²Π²Π΅Π΄ΠΈΡΠ΅ «Button_Click».
ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΡ ΠΠΠΠ. ΠΠ΅ΡΠΎΠ΄ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅ MainPage.xaml.cpp ΠΈ ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΊΠΎΠ΄Π°. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΡ.
Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π² MainPage.xaml ΠΊΠΎΠ΄ XAML Π΄Π»Ρ Button ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ Click ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΠΊΠΎΠ΄Ρ xaml Π²ΡΡΡΠ½ΡΡ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΄ΠΎΠ±Π½ΠΎ, Π΅ΡΠ»ΠΈ Π½Π΅ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ. ΠΡΠΈ Π²Π²ΠΎΠ΄Π΅ Π²ΡΡΡΠ½ΡΡ Π²Π²Π΅Π΄ΠΈΡΠ΅ «Π©Π΅Π»ΠΊΠ½ΡΡΡ» ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΠ΅ IntelliSense ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Visual Studio ΡΠΎΠ·Π΄Π°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΡ ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π΅ ΠΈ Π·Π°Π³Π»ΡΡΠΊΡ.
Π¨Π°Π³ 3. Π‘ΡΠΈΠ»Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ
ΠΡΠ±ΠΎΡ ΡΠ΅ΠΌΡ
ΠΠ½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅ΡΡΡΡΡ ΡΠΎ ΡΠ²Π΅ΡΠ»ΡΠΌ ΡΡΠΈΠ»Π΅ΠΌ. Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ²Π΅ΡΠ»ΡΡ ΡΠ΅ΠΌΡ. ΠΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅ Π΅Π΅ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅, ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΠΌΠ½ΡΡ ΡΠ΅ΠΌΡ
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» App.xaml.
Π ΠΎΡΠΊΡΡΠ²Π°ΡΡΠ΅ΠΌ ΡΠ΅Π³Π΅ Application ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ RequestedTheme ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΄Π»Ρ Π½Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Dark:
ΠΠΎΡ ΠΏΠΎΠ»Π½ΡΠΉ ΡΠ΅Π³ Application Ρ ΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΠ΅ΠΌΠΎΠΉ:
Π§ΡΠΎΠ±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ±ΠΎΡΠΊΡ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΡ F5. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅ΠΌΠ½ΡΡ ΡΠ΅ΠΌΡ.
ΠΠ°ΠΊΡΡ ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ? ΠΡΠ±ΡΡ, ΠΊΠ°ΠΊΡΡ ΠΏΠΎΠΆΠ΅Π»Π°Π΅ΡΠ΅! ΠΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π²ΠΈΠ΄Π΅ΠΎ, Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΌΠ½ΡΡ ΡΠ΅ΠΌΡ, Π° Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΌΠΎΠΌ ΡΠ΅ΠΊΡΡΠ° β ΡΠ²Π΅ΡΠ»ΡΡ ΡΠ΅ΠΌΡ. ΠΡΠ»ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠ°Ρ ΡΠ²Π΅ΡΠΎΠ²Π°Ρ ΡΡ Π΅ΠΌΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠΎΡΠ΅ΡΠ°Π΅ΡΡΡ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌ Π²ΠΈΠ΄ΠΎΠΌ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ°Π·Π΄Π΅Π»Π°Ρ Π½Π°ΡΡΠΎΡΡΠ΅Π³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠ²Π΅ΡΠ»ΡΡ ΡΠ΅ΠΌΡ Π½Π° ΡΠ½ΠΈΠΌΠΊΠ°Ρ ΡΠΊΡΠ°Π½Π°.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. Π’Π΅ΠΌΠ° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ΅ Π½Π΅Π»ΡΠ·Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ, ΠΏΠΎΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΡΠΈΠ»Π΅ΠΉ
Π Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΄Π»Ρ Windows ΡΠ΅ΠΊΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΠΌΠ΅Π»ΠΊΠΈΠΌ ΠΈ ΡΡΡΠ΄Π½ΡΠΌ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΈΡΠΏΡΠ°Π²ΠΈΠΌ ΡΡΠΎ, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ² ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΡΡΠΈΠ»Ρ.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΡΠΈΠ»Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» MainPage.xaml Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ Windows.
Π ΠΊΠΎΠ΄Π΅ XAML ΠΈΠ»ΠΈ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΉ ΡΠ°Π½Π΅Π΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ What’s your name? TextBlock.
Π ΠΎΠΊΠ½Π΅ Π‘Π²ΠΎΠΉΡΡΠ²Π° (F4) Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Β«Π‘Π²ΠΎΠΉΡΡΠ²Π°Β» ( ) Π² ΠΏΡΠ°Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ.
Π Π°Π·Π²Π΅ΡΠ½ΠΈΡΠ΅ Π³ΡΡΠΏΠΏΡ Π’Π΅ΠΊΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠΈΡΡΠ° 18 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ.
Π Π°Π·Π²Π΅ΡΠ½ΠΈΡΠ΅ Π³ΡΡΠΏΠΏΡ Π Π°Π·Π½ΠΎΠ΅ ΠΈ Π½Π°ΠΉΠ΄ΠΈΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Style.
Π©Π΅Π»ΠΊΠ½ΠΈΡΠ΅ ΠΌΠ°ΡΠΊΠ΅Ρ ΡΠ²ΠΎΠΉΡΡΠ² (Π·Π΅Π»Π΅Π½ΡΠΉ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ ΡΠΏΡΠ°Π²Π° ΠΎΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π‘ΡΠΈΠ»Ρ), Π° Π·Π°ΡΠ΅ΠΌ Π² ΠΌΠ΅Π½Ρ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΏΡΠ½ΠΊΡΡ Π‘ΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΡΠ΅ΡΡΡΡ > BaseTextBlockStyle.
BaseTextBlockStyle β ΡΡΠΎ ΡΠ΅ΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Π² ResourceDictionary Π² ΡΠ°ΠΉΠ»Π΅ \Program Files\Windows Kits\10\Include\winrt\xaml\design\generic.xaml.
ΠΠΈΠ΄ ΡΠ΅ΠΊΡΡΠ° Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ XAML ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ. Π ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ XAML ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ΄ XAML Π΄Π»Ρ TextBlock.
ΠΠΎΠ²ΡΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠΈΡΡΠ°, ΠΈ Π½Π°Π·Π½Π°ΡΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ BaseTextBlockStyle ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ greetingOutput TextBlock.
Π‘ΠΎΠ²Π΅Ρ. Π₯ΠΎΡΡ Π² ΡΡΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ΅ TextBlock Π½Π΅Ρ ΡΠ΅ΠΊΡΡΠ°, ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΌΡΡΠΈ Π½Π° ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ XAML Π³ΠΎΠ»ΡΠ±ΠΎΠΉ ΠΊΠΎΠ½ΡΡΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π΅Π³ΠΎ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π²ΡΠ±ΡΠ°ΡΡ.
XAML-ΠΊΠΎΠ΄ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
Π¨Π°Π³ 4. ΠΠ΄Π°ΠΏΡΠ°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΊ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌ ΠΎΠΊΠ½Π°
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ Π°Π΄Π°ΠΏΡΠΈΡΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌ ΡΠΊΡΠ°Π½Π°, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠ³Π»ΡΠ΄Π΅Π»ΠΎ Ρ ΠΎΡΠΎΡΠΎ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ . ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ VisualStateManager ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΌΠ°ΠΊΠ΅ΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ VisualStateManager Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ Π²Π΅ΡΡΠΈΡΡ XAML, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π² XAML Π·Π΄Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΏΡΠΎΡΠ΅Π½Π½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
Π£ VisualState Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ wideState ΠΈΠΌΠ΅Π΅ΡΡΡ AdaptiveTrigger, Π΄Π»Ρ ΡΠ²ΠΎΠΉΡΡΠ²Π° MinWindowWidth ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π·Π°Π΄Π°Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 641. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΠΈΡΠΈΠ½Π° ΠΎΠΊΠ½Π° ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 641 DIP. ΠΡ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΠ΅ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Setter Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΌΠ°ΠΊΠ΅ΡΠ°, Π·Π°Π΄Π°Π½Π½ΡΠ΅ Π² XAML Π΄Π»Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΡΡΠ°Π½ΠΈΡΡ.
Π‘Π²ΠΎΠ΄ΠΊΠ°
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΠ΅ΠΌ, Π²Ρ Π·Π°Π²Π΅ΡΡΠΈΠ»ΠΈ ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΡΠ΅Π±Π½ΠΈΠΊΠ°. ΠΡ Π½Π°ΡΡΠΈΠ»ΠΈΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π² ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows, ΠΌΠ΅Π½ΡΡΡ ΠΈΡ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ.
ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows, ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π° Windows 8.1 ΠΈ (ΠΈΠ»ΠΈ) Windows Phone 8.1, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π΅Π³ΠΎ Π² Windows 10. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°, Π½ΠΎ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΡΡΡΠ½ΡΡ. ΠΠ°ΡΠ½ΠΈΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Windows, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΡΠ°ΠΉΠ»Ρ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ΄Π° Π² ΡΡΡΡΠΊΡΡΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠΈΡΠ΅ ΠΊΠΎΠ΄ XAML, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ VisualStateManager Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌΠΈ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π°Ρ : ΠΠ΅ΡΠ΅Π½ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Windows 8 Π² ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Windows (UWP) ΠΈ ΠΠ΅ΡΠ΅Π½ΠΎΡ Π½Π° ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Windows (C++).
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΊΠΎΠ΄ Π½Π° C++, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ UWP, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° UWP Π΄Π»Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ·ΡΡΠΈΡΠ΅ ΡΠ°Π·Π΄Π΅Π» ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° C++ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Windows.