рд╕рд╛рдордЧреНрд░реА рдХреА рддрд╛рд▓рд┐рдХрд╛
- рдкрд░рд┐рдЪрдп
- рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рдкреНрд░рд┐рдЬреНрдо рдЕрдиреБрдкреНрд░рдпреЛрдЧ
- рдШрдЯрдХреЛрдВ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдкреНрд░рдмрдВрдзрди
- рдореЙрдбреНрдпреВрд▓рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд┐рдХрд╛рд╕
- рдПрдорд╡реАрд╡реАрдПрдо рдкреИрдЯрд░реНрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛
- рдЙрдиреНрдирдд MVVM рдкрд░рд┐рджреГрд╢реНрдп
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдирд┐рд░реНрдорд╛рдг
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢
- рдиреЗрд╡рд┐рдЧреЗрд╢рди
- рджреГрд╢реНрдп-рдЖрдзрд╛рд░рд┐рдд рдиреЗрд╡рд┐рдЧреЗрд╢рди
- рд╢рд┐рдерд┐рд▓ рдпреБрдЧреНрдорд┐рдд рдШрдЯрдХреЛрдВ рдХреЗ рдмреАрдЪ рдкрд╛рд░рд╕реНрдкрд░рд┐рдХ рдХреНрд░рд┐рдпрд╛
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢
рдЗрд╕ рдЦрдВрдб рдХрд╛ рд▓рдХреНрд╖реНрдп XAML рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рддрд╣ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИ, рдЬреЛ WPF, рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдпрд╛ рд╡рд┐рдВрдбреЛрдЬ рдЖрд░рдЯреА рдФрд░ рдкреНрд░рд┐рдЬреНрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛ рд░рд╣рд╛ рд╣реИред рдпрд╣ рдЦрдВрдб рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд▓реЗрдЖрдЙрдЯ, рджреГрд╢реНрдп рдкреНрд░рд╕реНрддреБрддрд┐, рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ, рд╕рдВрд╕рд╛рдзрди рдФрд░ рдбреЗрдЯрд╛ рдбрд┐рд╕реНрдкреНрд▓реЗ рдореЙрдбрд▓ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдЦрдВрдб рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдкреНрд░рд┐рдЬреНрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рддрдХрдиреАрдХ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЗрд╕рдХреА рдПрдХ рд╕рддрд╣реА рд╕рдордЭ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ рдЬреЛ рдПрдХ рдореЙрдбреНрдпреВрд▓рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рд╕рдорд░реНрдерд┐рдд рдпреВрдЖрдИ рдмрдирд╛рдиреЗ рдореЗрдВ рдЖрдкрдХреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдпреВрдЖрдИ рд╡рд┐рдХрд╛рд╕
рдкреНрд░рд┐рдЬреНрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдП рдЧрдП рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рд▓реЗрдЖрдЙрдЯ WPF рдФрд░ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдХреЗ рдорд╛рдирдХ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ - рд▓реЗрдЖрдЙрдЯ рд╕рдВрдмрдВрдзрд┐рдд рддрддреНрд╡реЛрдВ рдХреЗ рдкреИрдирд▓реЛрдВ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рдкреИрдирд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдЧрддрд┐рд╢реАрд▓ рд╣реИ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рд╣реЛрдиреЗ рддрдХ рдЬреНрдЮрд╛рдд рдирд╣реАрдВ рд╣реИред рдпрд╣ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдПрдХ рдорд╛рд░реНрдХрдЕрдк рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЧрддрд┐рд╢реАрд▓ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЙрд╕ рд╕рд╛рдордЧреНрд░реА рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЖрдкрдХреЗ рд▓рд┐рдП, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдкреНрд░рд┐рдЬрд╝реНрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рджреЛ рдореБрдЦреНрдп рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд╕реАрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА: рдХрдВрдЯреЗрдирд░ рд░рдЪрдирд╛ рдФрд░ рдХреНрд╖реЗрддреНрд░ред
рдХрдВрдЯреЗрдирд░ рд╕рдВрд░рдЪрдирд╛
рдХрдВрдЯреЗрдирд░ рд░рдЪрдирд╛ WFP рдФрд░ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд╛рдордЧреНрд░реА рдореЙрдбрд▓ рдХрд╛ рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╣реИред "рдХрдВрдЯреЗрдирд░" рд╢рдмреНрдж рдХрд╛ рдЕрд░реНрде рдХрд┐рд╕реА рднреА рддрддреНрд╡ рд╕реЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдЦрд┐рдбрд╝рдХреА, рдкреГрд╖реНрда, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рдпрдВрддреНрд░рдг, рдкреИрдирд▓, рд╡рд┐рд╢реЗрд╖ рдирд┐рдпрдВрддреНрд░рдг, рдирд┐рдпрдВрддреНрд░рдг рдЯреЗрдореНрдкрд▓реЗрдЯ рдпрд╛ рдЧрддрд┐рд╢реАрд▓ рд╕рд╛рдордЧреНрд░реАред рд╕реНрдерд┐рд░ рд╕рд╛рдордЧреНрд░реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддрддреНрд╡ рдХреА рд╕рдордЧреНрд░ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░реЗрдЧреА, рдФрд░ рдЧрддрд┐рд╢реАрд▓ рд╕рд╛рдордЧреНрд░реА рд╡рд╣ рд╣реЛрдЧреА рдЬреЛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдЕрдВрджрд░ рд░рдЦреА рдЧрдИ рд╣реИред
рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рдбрд┐рдЬрд╛рдЗрди рд╕рдордп рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреБрдЫ рд╣рдж рддрдХ рд╕реАрдорд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд░рдирдЯрд╛рдЗрдо рдХреЗ рджреМрд░рд╛рди рд╡рд┐рднрд┐рдиреНрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдХреНрдпрд╛ рд╕рд╛рдордЧреНрд░реА рд░рдЦреА рдЬрд╛рдПрдЧреА рдпрд╣ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЪрд┐рддреНрд░рдг рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рд╡рд┐рдВрдбреЛ рдХреЗ рджреГрд╢реНрдп рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд┐рддреНрд░рдг рдореЗрдВ рдЖрд╡реЗрджрди рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдХреЗ рджреГрд╢реНрдпред рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди, рдкреГрд╖реНрда рдЬреНрдпрд╛рджрд╛рддрд░ рдЦрд╛рд▓реА рд╣реИред рд▓реЙрдиреНрдЪ рдХреЗ рдмрд╛рдж рдХреЗ рджреГрд╢реНрдп рд╕реЗ рддреБрд▓рдирд╛ рдХрд░реЗрдВ, рдЬрдм рдЖрдкрдХреЛ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдирд┐рдпрдВрддреНрд░рдг рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдореВрд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЖрдк рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдорд┐рд╢реНрд░рд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЗ рд╕рд╛рдордиреЗ рдХрд╛рд░реНрдп рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рддрддреНрд╡ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдХрд┐ рд╡реЗ рдХрд┐рд╕ рдЖрдХрд╛рд░ рдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЖрд╡реЗрджрди рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрд╡рд░реВрдк рдХреЗ рдЕрдиреБрд░реВрдк рдХреИрд╕реЗ рд╣реЛрдВрдЧреЗ, рдХреБрдЫ рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИред рдЕрдкрдиреЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреА рд░рдЪрдирд╛ рдХрд░рддреЗ рд╕рдордп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
- рдХреНрдпрд╛ рдЕрдзрд┐рдХрддрдо рд╕рд╛рдордЧреНрд░реА рдЖрдХрд╛рд░ рдкрд░ рдХреЛрдИ рдкреНрд░рддрд┐рдмрдВрдз рд╣реИ? рдпрджрд┐ рдореМрдЬреВрдж рд╣реИ, рддреЛ рд╕реНрдХреНрд░реЙрд▓рд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
Expander
рдФрд░ ScrollViewer
рд╕рдВрдпреЛрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдПрдХ рд╕реАрдорд┐рдд рд╕реНрдерд╛рди рдкрд░ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред- рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЬрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдВрдбреЛ рдХрд┐рд╕реА рднреА рд╡рд┐рдВрдбреЛ рдЖрдХрд╛рд░ рдореЗрдВ рдЖрдХрд░реНрд╖рдХ рд▓рдЧреЗрдЧреА, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╕рд╛рдордЧреНрд░реА рд╡рд┐рдВрдбреЛ рдХрд╛ рдЖрдХрд╛рд░ рдХреИрд╕рд╛ рд╣реЛрдЧрд╛, рддреЛ рдЙрд╕рдХрд╛ рдЖрдХрд╛рд░ рдХреИрд╕рд╛ рд╣реЛрдЧрд╛ред
рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдореЗрдВ рд╕реНрдЯреЙрдХ рдЯреНрд░реЗрдбрд░ рдЖрд░рдЖрдИ рдХреА рдореБрдЦреНрдп рд╡рд┐рдВрдбреЛред
рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЗ рдмрд╛рдж рд╕реНрдЯреЙрдХ рдЯреНрд░реЗрдбрд░ рдЖрд░рдЖрдИ рдХреА рдореБрдЦреНрдп рд╡рд┐рдВрдбреЛред
рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХрд╛ рджреГрд╢реНрдп
рдкрд┐рдЫрд▓реЗ рджреЛ рдЪрд┐рддреНрд░ рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЪреБрдиреМрддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред рдПрдХ рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддрддреНрд╡ рдХреЛ рдЕрд▓рдЧ рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рд╕реЗ рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд▓реЙрдиреНрдЪ рдХреЗ рдмрд╛рдж рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ред рдЗрдХрдЯреНрдареЗ рд░рд╛рдЬреНрдп рдореЗрдВ рдЖрд╡реЗрджрди рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛, рдЗрд╕рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЙрд╕ рдкреГрд╖реНрда рдХреЗ рд╕рд╛рде рдПрдХ рдкрд░реАрдХреНрд╖рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдпрд╛ рдПрдХ рд╡рд┐рдВрдбреЛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рд╕реНрддреБрддрд┐ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддрддреНрд╡ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдЖрдк рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
- рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдпреВрдЖрдИ рддрддреНрд╡реЛрдВ рдХреЛ рдЖрдмрд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдмреНрд▓реЗрдВрдб рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010-2012 рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдбрд┐рдЬрд╝рд╛рдЗрди-рдЯрд╛рдЗрдо рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдбреЗрдЯрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ, рд╕реВрдЪреА, рдЧреНрд░рд╛рдлрд╝ рдпрд╛ рдЪрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреА рд╣реИред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, "рдбрд┐рдЬрд╝рд╛рдЗрди-рдЯрд╛рдЗрдо рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢" рджреЗрдЦреЗрдВред
рдЕрдВрдХрди
рдПрдХ рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓реЗрдЖрдЙрдЯ рдХреЛ рдбрд┐рдЬрд╛рдЗрди рдХрд░рддреЗ рд╕рдордп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
- рд╢реЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдореВрд▓ рд▓реЗрдЖрдЙрдЯ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рд▓реЗрдЖрдЙрдЯ рдХреНрд╖реЗрддреНрд░ рдПрдХ рдХреНрд╖реЗрддреНрд░ рд╣реИ, рдФрд░ рдПрдХ рдЦрд╛рд▓реА рдХрдВрдЯреЗрдирд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рд╕рд╛рдордЧреНрд░реА рдХреЛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдЕрдВрджрд░ рди рд░рдЦреЗрдВ, рдЗрд╕реЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
- рд╢реЗрд▓ рдореЗрдВ рдкреГрд╖реНрдарднреВрдорд┐ рдФрд░ рд╣реЗрдбрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕реЗ ASP.NET рдореЗрдВ рдПрдХ рдорд╛рд╕реНрдЯрд░ рдкреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЛрдЪреЗрдВред
- рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рдХрдВрдЯреЗрдирд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдирд┐рдпрдВрддреНрд░рдг рдЙрд╕ рджреГрд╢реНрдп рд╕реЗ рдЕрд▓рдЧ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдЙрдирдХреЗ рдкрд╛рд╕ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рджреГрд╢реНрдп рдХрд╛ рдЖрдХрд╛рд░ рдмрджрд▓рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рджреГрд╢реНрдп рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХрд╛ рдЖрдХрд╛рд░ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред рджреГрд╢реНрдп рдХрд╛ рдЖрдХрд╛рд░ рд╕реЗрдЯ рдХрд░рддреЗ рд╕рдордп рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:
- рдпрджрд┐ рджреГрд╢реНрдп рдХрдИ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд╣рд╛рдБ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рддреЛ рдЗрд╕реЗ рдЧрддрд┐рд╢реАрд▓ рдКрдБрдЪрд╛рдИ рдФрд░ рдЪреМрдбрд╝рд╛рдИ рдХреЗ рд╕рд╛рде рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░реЗрдВред
- рдпрджрд┐ рджреГрд╢реНрдп рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рд╣реИрдВ, рддреЛ рд╢реЗрд▓ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рдЖрдХрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рдпрджрд┐ рд╢реЗрд▓ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рд╣реИрдВ, рддреЛ рд╡рд┐рдЪрд╛рд░реЛрдВ рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рдЖрдХрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рджреГрд╢реНрдпреЛрдВ рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдКрдВрдЪрд╛рдИ рдФрд░ рдЧрддрд┐рд╢реАрд▓ рдЪреМрдбрд╝рд╛рдИ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рд╕реНрдЯреЙрдХ рдЯреНрд░реЗрдбрд░ рдЖрд░рдЖрдИ рдХреЗ рдкрд╛рд╕ рд╕рд╛рдЗрдбрдмрд╛рд░ рдкрд░ рд╕реНрдерд┐рдд рдПрдХ
PositionPieChart
рджреГрд╢реНрдп рд╣реИред - рдЕрдиреНрдп рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рдКрдВрдЪрд╛рдИ рдФрд░ рдЪреМрдбрд╝рд╛рдИ рд╣реЛ рд╕рдХрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдЯреЙрдХ рдЯреНрд░реЗрдбрд░ рдЖрд░рдЖрдИ рдореЗрдВ рд╕рд╛рдЗрдбрдмрд╛рд░ рдореЗрдВ
NewsReader
ред рдЗрд╕рдХреА рдКрдВрдЪрд╛рдИ рдЗрд╕рдХреЗ рд╢реАрд░реНрд╖рдХ рдХреА рд▓рдВрдмрд╛рдИ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ, рдФрд░ рдЪреМрдбрд╝рд╛рдИ рд╣рдореЗрд╢рд╛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рд╡рд╣реА рдирд┐рдпрдо рд╕реНрдерд┐рддрд┐рдпреБрдорд╕реНрдореЗрд░рд┐рдПрд╡ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдБ рддрд╛рд▓рд┐рдХрд╛ рдХреА рдЪреМрдбрд╝рд╛рдИ рд╕реНрдХреНрд░реАрди рдХреЗ рдЖрдХрд╛рд░ рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
- рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдХ рдкрд╛рд░рджрд░реНрд╢реА рдкреГрд╖реНрдарднреВрдорд┐ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдЬреЛ рд╢реЗрд▓ рдХреЛ рдЕрдкрдиреА рдкреГрд╖реНрдарднреВрдорд┐ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред
- рд░рдВрдЧ, рдмреНрд░рд╢ рдФрд░ рдлреЛрдВрдЯ рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рдирд╛рдорд┐рдд рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдмрдЬрд╛рдп рдЙрдиреНрд╣реЗрдВ рд╕реАрдзреЗ рддрддреНрд╡ рдЧреБрдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕рдорд░реНрдерди рдХреЛ рдмрд╣реБрдд рд╕рд░рд▓ рдХрд░реЗрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд░рдирдЯрд╛рдЗрдо рдкрд░ рд╕рдВрд╕рд╛рдзрди рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рдЕрдиреБрдорддрд┐ рджреЗ рд╕рдХрддрд╛ рд╣реИред
рдПрдирд┐рдореЗрд╢рди
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдпрджрд┐ рдЖрдк рд╢реЗрд▓ рдореЗрдВ рдпрд╛ рд╡рд┐рдЪрд╛рд░реЛрдВ рдореЗрдВ рдПрдирд┐рдореЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:
- рдЖрдк рд╢реЗрд▓ рдХреЗ рд▓реЗрдЖрдЙрдЯ рдХреЛ рдЪреЗрддрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдФрд░ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЪреЗрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
- рдкреНрд░рддреНрдпреЗрдХ рджреГрд╢реНрдп рдХреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдФрд░ рдЪреЗрддрди рдХрд░реЗрдВред
- рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рджреГрд╢реНрдп рддрддреНрд╡ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рджреГрд╢реНрдп рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдирд░рдо рдФрд░ рд╡рд┐рдиреАрдд рдПрдирд┐рдореЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрд╣ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдПрдХ рдЪрдордХ рджреЗрдЧрд╛ред
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдмреНрд▓реЗрдВрдб, рд░рд╛рдЬреНрдпреЛрдВ рдФрд░ рдШрдЯрдирд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдирд┐рдореЗрд╢рди рдФрд░ рдмрджрд▓рд╛рд╡ рдмрдирд╛рдиреЗ рдФрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╡рд╣рд╛рд░, рдХреНрд╖реАрдгрди рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рд╕рдореГрджреНрдз рдЕрд╡рд╕рд░реЛрдВ рдХрд╛ рдПрдХ рд╕рдореГрджреНрдз рд╕реЗрдЯ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, MSDN рдкрд░
"VisualStateManager Class" рд▓реЗрдЦ рджреЗрдЦреЗрдВред
рд░рдирдЯрд╛рдЗрдо рдЕрдиреБрдХреВрд▓рди
рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
App.xaml
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдпрд╛ рд╢реИрд▓реА рдХреЛ рджреЛрд╣рд░рд╛рд╡ рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП App.xaml
рдореЗрдВ рдХреЛрдИ рд╕рд╛рдЭрд╛ рд╕рдВрд╕рд╛рдзрди рд░рдЦреЗрдВред- рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдореЗрдВ, рдмрд╛рдХреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЯреЗрдХреНрд╕реНрдЯ рд╕реНрдЯрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдиреЙрди-рд╕рд┐рд╕реНрдЯрдо рдлреЛрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрдЪреЗрдВ, рдЬреИрд╕реЗ рдХрд┐ рд╣реЗрдбрд┐рдВрдЧред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдкрд╛рда рдХреЛ рдкрде рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдпрд╛ рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдлрд╝реЙрдиреНрдЯ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдлрд╝реЙрдиреНрдЯ рдХреЛ рдПрдореНрдмреЗрдб рдХрд░рдирд╛ рдЙрд╕рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рдлрд╝реЙрдиреНрдЯ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдмрдбрд╝реА рд╣реИрдВред рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ .xap рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдЖрдкрдХреЛ рд╡рд░реНрдгреЛрдВ рдХреЗ рдХреЗрд╡рд▓ рд╕рдмрд╕реЗрдЯ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рди рдХрд┐ рдкреВрд░реЗ рдлрд╝реЙрдиреНрдЯ рдХреЛред
рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП,
"рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдореЗрдВ рдХрд╕реНрдЯрдо рдлрд╝реЙрдиреНрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛" рджреЗрдЦреЗрдВред
рдбрд┐рдЬрд╛рдЗрди рд╕рдордп рдЕрдиреБрдХреВрд▓рди
рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡рд┐рдЬрд╝реБрдЕрд▓ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдЖрдиреЗ рд╡рд╛рд▓реА рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд╛рдПрдБ рдФрд░ рд╕рдорд╛рдзрд╛рди рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИрдВред
XAML рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рдмрд╣реБрдд рд╕реЗ рдорд╣рд╛рди рд╕рдорд╛рдзрд╛рди
рдХрдИ XAML рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдмрдбрд╝реЗ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдЬреЛ рдЗрд╕рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИрдВ, рджреГрд╢реНрдп рд╕рдВрдкрд╛рджрдХ рдХрд╛ рд▓реЛрдбрд┐рдВрдЧ рд╕рдордп рдмрд╣реБрдд рдмрдврд╝ рд╕рдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рджреГрд╢реНрдп рд╕рдВрдкрд╛рджрдХ рдХреЛ рд╕рднреА рдПрдореНрдмреЗрдбреЗрдб рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдкрд╛рд░реНрд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рднреА XAML рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рдФрд░ рдлрд┐рд░ рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдкрд░рд┐рдгрд╛рдореА DLL рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред рдЪреВрдВрдХрд┐ рдЕрдм рд╕рднреА рд╕рдВрд╕рд╛рдзрди рдмрд╛рдЗрдирд░реА рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдбрд┐рдЬрд╛рдЗрдирд░ рдХреЛ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рджрдо рдкрд░ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХреЛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред XAML рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд▓реЗ рдЬрд╛рддреЗ рд╕рдордп, рдЖрдк рдЕрдкрдиреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд▓рд┐рдП
ComponentResourceKeys
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, MSDN рдкрд░
"ComponentResourceKey Markup Extension" рджреЗрдЦреЗрдВред
XAML рд╕рдВрд╕рд╛рдзрди
рдПрдХреНрд╕рдПрдПрдордПрд▓ рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдФрд░ рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ рднрд╛рд╖рд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдЪрд┐рддреНрд░, рдЖрд░реЗрдЦ, рдЪрд┐рддреНрд░ рдФрд░ 3 рдбреА рджреГрд╢реНрдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдХреБрдЫ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░ рдЧреНрд░рд╛рдлрд┐рдХ рдЪрд┐рддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдРрд╕реЗ рд╕рдВрд╕рд╛рдзрди рдмрдирд╛рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдкрд╣рд▓рд╛ рд▓рд╛рдн рд╕реНрдХреНрд░реАрди рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдХреА рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рд╣реИред рджреВрд╕рд░рд╛ рдХреЗрд╡рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕реВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ, рджреЛрдиреЛрдВ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдФрд░ рдЖрд╡реЗрджрди рдХреЛ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
рджреГрд╢реНрдп рд╕рдВрдкрд╛рджрдХ рдФрд░ рдмрдирд╛рддрд╛ рд╣реИ
рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдЕрд╕реЗрдВрдмрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд╣рд▓реВ рдпрд╣ рд╣реИ рдХрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдмреНрд▓реЗрдВрдб рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдореЗрдВ рд╕рдВрдкрддреНрддрд┐ рд╕рдВрдкрд╛рджрдХ рдРрд╕реА рд╡рд┐рдзрд╛рдирд╕рднрд╛рдУрдВ рдореЗрдВ рд╕реНрдерд┐рдд рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЕрдиреНрдп рд╡рд┐рдзрд╛рдирд╕рднрд╛рдУрдВ рдореЗрдВ рд╕реНрдерд┐рдд рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рдирд╛рдореЛрдВ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред
рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдбрд┐рдЬрд╛рдЗрди-рдЯрд╛рдЗрдо App.xaml рд╕рдВрд╕рд╛рдзрди
рдХрдВрдкреЛрдЬрд┐рдЯ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХреЗ рд╡рд┐рд▓рдВрдмрд┐рдд рд▓реЛрдбрд┐рдВрдЧ рдХреЗ рдХрд╛рд░рдг рд▓реЛрдбрд┐рдВрдЧ рд╕рдордп рдХреЛ рдХрдо рдХрд░рдиреЗ рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ .xap рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛрдиреЛрдВ рдХреЛ рд╕рдВрд░рдЪрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рд░рдгрдиреАрддрд┐ рдореБрдЦреНрдп рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдирд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдкреНрд░рддреНрдпреЗрдХ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдЙрдкрдЧреНрд░рд╣ рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реИред рдРрд╕реА рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╕рдордп, рдЖрдк рдХрд┐рд╕реА рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдпрд╛ рддреЛ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рдпрд╛ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИред
рд╕реИрдЯреЗрд▓рд╛рдЗрдЯ рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рддреИрдирд╛рдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рд▓рд╛рдн рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ: рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЛ рд╕рдВрдХрд▓рди рдХреЗ рд▓рд┐рдП рдПрдХ
.xap
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рдпрд╣ рд╣реИ рдХрд┐ рд╡рд┐рдЬрд╝реБрдЕрд▓ рдбрд┐рдЬрд╝рд╛рдЗрдирд░, рдЕрдЧрд░ рдПрдХ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдХрдИ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИрдВ, рддреЛ рдХреЗрд╡рд▓ рд╕рдХреНрд░рд┐рдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА
App.xaml
рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб 4 рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЬрдм рд╡рд╣ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдПрдХ рд╕рдВрд╡рд╛рдж рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рд╡рд╣ рдЖрд╡рд╢реНрдпрдХ рд╕рдВрд╕рд╛рдзрди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреВрд░реЗ рдЖрд╡реЗрджрди рдХреЗ рджреМрд░рд╛рди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рджреГрд╢реНрдп рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╕рдорд╛рд░реЛрд╣ рдирд╣реАрдВ рд╣реИ, рдХреНрд░рдорд╢рдГ, рдЙрдкрдЧреНрд░рд╣ рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдореЗрдВ рджреГрд╢реНрдп рд╕рдВрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЬрдм рддрдХ рдХрд┐ рдЖрдк рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди-рд╕реНрддрд░реАрдп рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдореЗрдВ рдирд╣реАрдВ рдбрд╛рд▓рддреЗред рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдЪреБрдирд╛ рд╣реИ, рддреЛ рдЖрд╡реЗрджрди рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЙрдкрдЧреНрд░рд╣ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рд╕реЗ рдЗрди рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╣рдЯрд╛рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВред
рдбрд┐рдЬрд╛рдЗрди рдХреЗ рдЕрдиреБрдХреВрд▓ рджреГрд╢реНрдп рдЧрд╛рдЗрдб
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд┐рдВрджреБ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рдЕрдиреБрдХреВрд▓ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ (рдЬрд┐рдиреНрд╣реЗрдВ
рдорд┐рд╢реНрд░рдг рдпреЛрдЧреНрдп рдпрд╛
рдЙрдкрдХрд░рдг-рд╕рдХреНрд╖рдо рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ):
- рдЙрдиреНрд╣реЗрдВ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдпрд╛ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдореЗрдВ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдмрдВрдзрди рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдмрд┐рд▓реНрдбрд░ред
- рд╡реЗ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
- рд╡реЗ рдХреЛрдб рдХреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрдкрд╡рд╛рдж рдХреЗ рдЙрддреНрдкрдиреНрди рдХрд┐рдП рдмрд┐рдирд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рд╕рдордп рдкрд░ рдЪрд▓рдиреЗ рджреЗрддреЗ рд╣реИрдВред
рд╕рдВрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рдХрдИ рдмрд╛рд░ рдирд┐рдореНрди рдСрдкрд░реЗрд╢рди рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдХрд╕реНрдЯрдо рдХреЛрдб рдЬреЛ рдбрд┐рдЬрд╛рдЗрдирд░ рдХреЗ рдЕрдиреБрдХреВрд▓ рдирд╣реАрдВ рд╣реИ, рдЙрдирдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдореЗрдВ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдбрд┐рдЬрд╛рдЗрдирд░ рдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреА рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХрдо рд╣реЛ рд╕рдХрддреА рд╣реИред
- рдбрд┐рдЬрд╛рдЗрди рдХреА рд╕рддрд╣ рдХреНрд░рд┐рдпрд╛рдПрдВ:
- рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдБ
- рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ рд╡рд╕реНрддреБрдУрдВ
- рд╕рдВрдкрддреНрддрд┐ рдорд╛рди рд╕реЗрдЯ рдХрд░рдирд╛
- рдбрд┐рдЬрд╝рд╛рдЗрди рд╕рд░рдлреЗрд╕ рдЗрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд┐рдВрдЧ
- рд░реВрдЯ рддрддреНрд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рдпрдВрддреНрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
- рдПрдХ рдирд┐рдпрдВрддреНрд░рдг рджреВрд╕рд░реЗ рдХреЗ рдЕрдВрджрд░ рдбрд╛рд▓рдирд╛
- XAML рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рдирд╛, рдмрдВрдж рдХрд░рдирд╛ рдФрд░ рдкреБрдирдГ рд▓реЛрдб рдХрд░рдирд╛
- рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдкреБрди: рд╕реНрдерд╛рдкрди
- рдбрд┐рдЬрд╛рдЗрдирд░ рд░реАрд▓реЛрдб
- рдмрд╛рдзреНрдпрдХрд╛рд░реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдмрд┐рд▓реНрдбрд░ рдХреЗ рдХрд╛рд░реНрдп:
DataContext
рдбрд┐рдЯреЗрдХреНрд╢рди- рдЙрдкрд▓рдмреНрдз рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдирд╛
- рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдкреНрд░рдХрд╛рд░ рдЧреБрдгреЛрдВ рдХреА рдЧрдгрдирд╛
- рдбрд┐рдЬрд╛рдЗрди рд╕рдордп рдХреЗ рдирдореВрдиреЗ рдбреЗрдЯрд╛ рдХреЗ рдХрд╛рд░реНрдп:
- рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХреА рд╕рддрд╣ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдХреЛрдб рдмрдирд╛рдирд╛
рдПрдХ рдбрд┐рдЬрд╛рдЗрдирд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдФрд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреЛрдб рдХреЗ рдХрд╛рд░рдг рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдЕрд╢рдХреНрдд рд╕рдВрджрд░реНрдн рдЕрдкрд╡рд╛рдж рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рд╡реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рд▓реЛрдбрд┐рдВрдЧ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЕрдкрд╡рд╛рджреЛрдВ рдХреА рдПрдХ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддреЗ рд╣реИрдВред
рдирд┐рдореНрди рддрд╛рд▓рд┐рдХрд╛ рдЙрди рдореБрдЦреНрдп рдореБрджреНрджреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддреА рд╣реИ рдЬреЛ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИрдВред рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рджреГрд╢реНрдп рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рдЙрддреНрдкрд╛рджрдХрддрд╛ рдФрд░ рд╕рдВрддреБрд╖реНрдЯрд┐ рдореЗрдВ рдХрд╛рдлреА рд╕реБрдзрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рдЗрд╕рд╕реЗ рдмрдЪреЗрдВ
| рджреГрд╢реНрдп рд╕реНрдЯреВрдбрд┐рдпреЛ 2010
| рдмреНрд▓реЗрдВрдб рек
|
рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдХрдИ рдзрд╛рдЧреЗ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рд░реНрдорд╛рдг рдореЗрдВ, рдпрд╛ Loaded рдШрдЯрдирд╛ рдореЗрдВ Timer рдмрдирд╛рдирд╛ рдФрд░ рд╢реБрд░реВ рдХрд░рдирд╛ред |  |  |
рдЙрди рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬреЛ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЬреЛ рд╕реНрд╡рдпрдВ рдХреЛ рдкреБрди: рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВред |  |  |
рдХрдирд╡рд░реНрдЯрд░, рдпрд╛ рдбреЗрдЯрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЪрдпрдирдХрд░реНрддрд╛ рдореЗрдВ рдПрдХ рд╢реВрдиреНрдп рд╕рдВрджрд░реНрдн рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХрдирд╛ред |  |  |
рдПрдХ рд╢реВрдиреНрдп рд╕рдВрджрд░реНрдн рдЕрдкрд╡рд╛рдж, рдпрд╛ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЗрдВ рдХрд┐рд╕реА рдЕрдиреНрдп рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХрдирд╛ред рдЗрд╕рдХреЗ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
- рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдЬреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рдкрд╛рд░рд┐рдХ рдкрд░рдд рдпрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрдЯрд╛ рд▓реЗрдпрд░ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред
- рдмреВрдЯрд▓реЛрдбрд░ рдпрд╛ рдХрдВрдЯреЗрдирд░ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛрдб рдХреЛ рдЪрд▓рд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХрдВрдЯреЗрдирд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ред
|  |  |
рдирд┐рдпрдВрддреНрд░рдг рдХреЗ Loaded рдШрдЯрдирд╛ рдХреЗ рдЕрдВрджрд░ рдПрдХ рд╢реВрдиреНрдп рд╕рдВрджрд░реНрдн рдЕрдкрд╡рд╛рдж, рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХрдирд╛ред рдпрд╣ рддрдм рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдирд┐рдпрдВрддреНрд░рдг рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдзрд╛рд░рдгрд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬреЛ рд░рдирдЯрд╛рдЗрдо рдкрд░ рд╕рд╣реА рд╣реЛ рд╕рдХрддреА рд╣реИ рд▓реЗрдХрд┐рди рдбрд┐рдЬрд╝рд╛рдЗрди рд╕рдордп рдкрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред |  |  |
рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди Application.Current рдпрд╛ Application.Current рдСрдмреНрдЬреЗрдХреНрдЯ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ред |  |  |
WPF UserControls рдореЗрдВ StaticResource рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред |  |  |
рдмрд╣реБрдд рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдгред |  |  |
рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдХреЛрдб рдореБрджреНрджреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛
рд░рдХреНрд╖рд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░рдерд╛рдУрдВ рдХреА рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдЙрдкрд░реЛрдХреНрдд рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд▓рдЧрднрдЧ рд╕рднреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рд╕рдХрддреА рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреЛрдб рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдпрд╣ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдирд┐рдпрдВрддреНрд░рдг рдФрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЛрдб рдХреЛ рдЖрдЗрд╕реЛрд▓реЗрд╢рди рдореЗрдВ рдбрд┐рдЬрд╛рдЗрдирд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдЕрдирдЗрдВрд╕реНрдЯрд╛рд▓реНрдпреВрдЯреЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЛрдореЗрди рдХреЗ рдЕрдВрджрд░ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ, Uninitialized, рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдмреВрдЯрд▓реЛрдбрд░ рдпрд╛ рдЖрд░рдВрднреАрдХрд░рдг рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЬрдм рдЖрдкрдХрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХреЗ рдмрд╛рдж рдЪрд▓рдирд╛ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ
App.xaml.cs
рдореЗрдВ рдХреЛрдб
App.xaml.cs
ред рдпрджрд┐ рдХреЛрдИ рдХреЛрдб рд╣реИ рдЬрд┐рд╕ рдкрд░ рдЖрдкрдХрд╛ рдЖрд╡реЗрджрди рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ рдЖрдк рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрд╡рд╛рдВрдЫрд┐рдд рдЕрдкрд╡рд╛рдж рдЙрддреНрдкрдиреНрди рд╣реЛрдВрдЧреЗред рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:
- рдХрднреА рднреА рдпрд╣ рди рд╕рдордЭреЗрдВ рдХрд┐ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдХреЛрдИ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдХреЛрдб рдореЗрдВ рдЬрд┐рд╕реЗ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рдореЗрд╢рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ
null
рдЬрд╛рдВрдЪ рдХрд░реЗрдВред - рдпрджрд┐ рдЖрдкрдХрд╛ рдХреЛрдб
Application
рдСрдмреНрдЬреЗрдХреНрдЯ рдпрд╛ Application.Current
рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЙрдиреНрд╣реЗрдВ null
рд▓рд┐рдП рдЬрд╛рдВрдЪреЗрдВред - рдпрджрд┐ рдЖрдкрдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдореЗрдВ рдХреЛрдб, рдпрд╛
Loaded
рдШрдЯрдирд╛ рдореЗрдВ, рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдирд┐рдореНрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
- рдХреЛрдб рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЬрд╛рдБрдЪ рд▓реЗрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдзрд┐ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрдХрд░ рдбрд┐рдЬрд╝рд╛рдЗрдирд░ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
- WPF :
DesignerProperties.GetIsInDesignMode
- рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ :
DesignerProperties.IsInDesignTool
- рдХреЛрдб рдХреЛ рд╕реАрдзреЗ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЗрдВ, рдпрд╛
Loaded
рдИрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рдореЗрдВ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЗрд╕реЗ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд┐рдзрд┐ рдХреЙрд▓ рдХреЗ рдкреАрдЫреЗ рдЕрдореВрд░реНрдд рдХрд░реЗрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЖрдк рд░рдирдЯрд╛рдЗрдо, рдбрд┐рдЬрд╝рд╛рдЗрди, рдФрд░ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рддрдХрдиреАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдХрд┐ рдХреЛрдб рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рджреЛрдиреЛрдВ рдбрд┐рдЬрд╝рд╛рдЗрдирд░ рдкреИрдирд▓ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд░реВрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рд▓реЗрдЖрдЙрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдбрд┐рдЬрд╛рдЗрдирд░ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЪреВрдВрдХрд┐ рд░реВрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдирдХрд▓реА рд╣реИ, рдЗрд╕рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдФрд░
Loaded
рдИрд╡реЗрдВрдЯ рдХреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдордВрдЪ рдкрд░ рд╢реЗрд╖ рдирд┐рдпрдВрддреНрд░рдг рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХреА
Loaded
рдШрдЯрдирд╛ рдХреЛ рд░рди рдЯрд╛рдЗрдо рдкрд░ рд╣реА
Loaded
рдЬрд╛рддрд╛ рд╣реИред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреГрд╖реНрдЯрд╛рдВрдд рдореЗрдВ,
Windows
рд░реВрдЯ рдПрд▓рд┐рдореЗрдВрдЯ рдХреЗ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдФрд░ рдЙрд╕рдХреЗ
Loaded
рдЗрд╡реЗрдВрдЯ рдХреЛ рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЪрд╛рдЗрд▓реНрдб рдПрд▓рд┐рдореЗрдВрдЯ рдХреЛ рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдпрд╣ рдЕрд╡рдзрд╛рд░рдгрд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдЬрдм рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд░рдирдЯрд╛рдЗрдо рдкрд░ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред
рдЖрд╡реЗрджрди рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡рд┐рдЪрд╛рд░ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдмрдирд╛рдП рдЧрдП рд╣реИрдВред рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, рд╡реЗ рдЖрдорддреМрд░ рдкрд░ рдбрд┐рдЬрд╛рдЗрдирд░ рдореЗрдВ рдореВрд▓ рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВ, рдХреНрд░рдорд╢рдГ, рдЙрдирдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдФрд░
Loaded
рдШрдЯрдирд╛рдУрдВ рдХреЛ рдХрднреА рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрджрд┐ рдЖрдк рдПрдХ рдмрд╛рд▓ рддрддреНрд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╛рдЗрди рдХреА рд╕рддрд╣ рдкрд░ рдРрд╕рд╛ рдирд┐рдпрдВрддреНрд░рдг рд░рдЦрддреЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рдЕрд▓рдЧ-рдерд▓рдЧ рдерд╛, рддреЛ рдпрд╣ рдЕрдм рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдЪрд▓рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдиреЗ рдКрдкрд░ рд╕реВрдЪреАрдмрджреНрдз рдбрд┐рдЬрд╝рд╛рдЗрди рдкреНрд░рдерд╛рдУрдВ рдХрд╛ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рддрддреНрд╡ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рдЕрдкреНрд░рд┐рдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рд╕реНрд░реЛрдд рдмрди рд╕рдХрддрд╛ рд╣реИ рдФрд░ рджреГрд╢реНрдп рдбрд┐рдЬрд╛рдЗрдирд░ рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдореЗрдВ рдХрдореА рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред
рдбрд┐рдЬрд╛рдЗрди рд╕рдордп рдЧреБрдг
"
d:
" рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд╕рд╛рде рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдбрд┐рдЬрд╝рд╛рдЗрди-рдЯрд╛рдЗрдо рдЧреБрдг рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдЙрддреНрдкрд╛рджрдХрддрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
рдЬрд┐рд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рдо рд╣рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╡рд╣ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд╛рдзреНрдпрдХрд╛рд░реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдбрд┐рдЬрд╛рдЗрдирд░ рдХреЛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рд╡рд╣ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреЗ рдЧреБрдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдирдореВрдирд╛ рдбреЗрдЯрд╛ рднреА рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдирд┐рдореНрди рдЕрдиреБрднрд╛рдЧреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
d:DataContext
рдФрд░
d:DesignInstance
рдорд╛рд░реНрдХрдЕрдк
d:DesignInstance
ред
рдкрд┐рдЫрд▓реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдореЗрдВ "
d:
" рдирд╛рдорд╕реНрдерд╛рди рдХрд╛ рдПрдХ рдЙрдкрдирд╛рдо рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди-рдЯрд╛рдЗрдо рдЯреВрд▓ рд╕реНрдерд┐рдд рд╣реИрдВред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦ "
d:
" рдЧреБрдгреЛрдВ рдФрд░ рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ:
"
d:
" рдЧреБрдг рдФрд░ рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдирд╣реАрдВ рдмрдирд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛрдб рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд╡реЗ рдХреЗрд╡рд▓ рдПрдХреНрд╕рдПрдПрдордПрд▓ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рднреА рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд╡реЗ рдХреЗрд╡рд▓ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдФрд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдореЗрдВ рдЯреВрд▓ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
рд╕рдВрдкрддреНрддрд┐ d: DataContext
d:DataContext
рдирд┐рдпрдВрддреНрд░рдг рдФрд░ рдЙрд╕рдХреЗ рд╡рдВрд╢рдЬ рдХреЗ рд▓рд┐рдП рд░рдирдЯрд╛рдЗрдо рдбреЗрдЯрд╛ рд╕рдВрджрд░реНрдн рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред
d:DataContext
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╕рдордп
d:DataContext
рдЖрдкрдХреЛ рд░рди рдЯрд╛рдЗрдо рдХреЗ рджреМрд░рд╛рди
DataContext
рдбреЗрдЯрд╛ рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рдПрдХ рд╣реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрджрд┐ рдХреЛрдИ
DataContext
рдФрд░
d:DataContext
рджреЛрдиреЛрдВ рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджрд┐рд╖реНрдЯ
d:DataContext
, рддреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдЙрдкрдХрд░рдг
d:DataContext
рдЪрдпрди рдХрд░реЗрдВрдЧреЗред
рдбреА рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди: DesignInstance
рдпрджрд┐ рдЖрдкрдХреЛ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ рдХрд┐ рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреНрдпрд╛ рд╣реИрдВ, рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдПрдордПрд╕рдбреАрдПрди рд▓реЗрдЦ
"рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдФрд░ рдбрдмреНрд▓реНрдпреВрдкреАрдПрдл рдПрдХреНрд╕рдПрдПрдордПрд▓" рдкрдврд╝рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред
d:DesignInstance
рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдбреЗрдЯрд╛ рд╕рдВрджрд░реНрдн рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХ рд╡рд╕реНрддреБ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреИрд░рд╛рдЧреНрд░рд╛рдл
d:DesignInstance
рдХреЗ рдЧреБрдгреЛрдВ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддреЗ рд╣реИрдВ
d:DesignInstance
:
рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдкреНрд░реЙрдкрд░реНрдЯреА | рд╡рд┐рд╡рд░рдг |
---|
Type | рдирд╛рдо рдЯрд╛рдЗрдк рдХрд░реЗрдВред рдЯрд╛рдЗрдк рдПрдХ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИред |
IsDesignTimeCreatable | рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ false , рддреЛ рдПрдХ рдЫрджреНрдо рд╕реНрд╡рд░реВрдк рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдирд╣реАрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдЧрд▓рдд рд╣реИред |
CreateList | рдпрджрд┐ рд╕рдЪ рд╣реИ, рддреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рд╕реВрдЪреА рджреЗрддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди false ред |
рдбреА рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ : DataContext
рдирд┐рдореНрди рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рдкреНрд░рд╕реНрддреБрддрд┐ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рджреЛрд╣рд░рд╛рд╡ рдкреИрдЯрд░реНрди рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред
рдкрд░реНрд╕рди
PersonViewModel
рдореЗрдВ рд░рдирдЯрд╛рдЗрдо рдкрд░ рд╣рд▓ рдХрд┐рдП рдЧрдП
PersonViewModel
рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдореЙрдбрд▓ рдХреЛ рдЬрд╛рдирдмреВрдЭрдХрд░ рд╕рд░рд▓реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдЖрдорддреМрд░ рдкрд░ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЗрдВ рдЗрдВрдЬреЗрдХреНрдЯ рдХреА рдЬрд╛рдПрдЧреАред
рдирд┐рд░реНрдорд┐рдд рд╣реЛрдиреЗ рдкрд░ PersonView
, рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛ PersonViewModel
рдХрдВрдЯреЗрдирд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрдирд╛рдИ рдФрд░ рд╣рд▓ рдХреА рдЬрд╛рдПрдЧреАредрдиреЛрдЯред
рдпрджрд┐ рдкреНрд░рд╕реНрддреБрддрд┐ рдореЙрдбрд▓ рдореЗрдВ рдХреЛрдИ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ XAML рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ DataContext
, рдФрд░ d:DataContext
рдЬрд░реВрд░реА рдирд╣реАрдВ рд╣реИред
PersonViewModel.cs [Export] public class PersonViewModel { public String FirstName { get; set; } public String LasName { get; set; } }
PersonView.xaml.cs [Export] public partial class PersonView : UserControl { public PersonView() { InitializeComponent(); } [Import] public PersonViewModel ViewModel { get { return this.DataContext as PersonViewModel; } set { this.DataContext = value; } } }
рдкреНрд░рд╕реНрддреБрддрд┐ рдФрд░ рдкреНрд░рд╕реНрддреБрддрд┐ рдореЙрдбрд▓ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЦрд╛рдХрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдЕрдВрдзреЗрд░реЗ рдореЗрдВ рдПрдХ рд╡рд┐рдЪрд╛рд░ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдЗрд╕реЗ рдХрд┐рд╕ рдбреЗрдЯрд╛ рд╕рдВрджрд░реНрдн рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПредрдЕрдЧрд▓реЗ XAML рдореЗрдВ, рдЖрдк рдЙрд╕ d:DesignInstance
рддрддреНрд╡ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ Grid
рдЙрд╕ рдЫрджреНрдо рдЙрджрд╛рд╣рд░рдг PersonViewModel
рдХреЛ рд▓реМрдЯрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рдВрдкрддреНрддрд┐ рд╕реЗрдЯ рдХреА рдЧрдИ рд╣реИ d:DataContext
ред рдирддреАрдЬрддрди, рдмрдЪреНрдЪреЛрдВ рдореЗрдВ Grid
рдореВрд▓реНрдп рдХрд╛ рдЙрддреНрддрд░рд╛рдзрд┐рдХрд╛рд░ рд╣реЛрдЧрд╛ d:DataContext
, рдЬреЛ рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЧреБрдгреЛрдВ рдФрд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдбрд┐рдЬрд╛рдЗрдирд░ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рдХрд╛рдо рдХреЛ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рддрд╛ рд╣реИредPersonView.xaml <UserControl xmlns:local="clr-namespace:WpfApplication1" x:Class="WpfApplication1.PersonView" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300"> <Border BorderBrush="LightGray" BorderThickness="1" CornerRadius="10" Padding="10"> <Grid d:DataContext="{d:DesignInstance local:PersonViewModel}"> <Grid.RowDefinitions> <RowDefinition Height="Auto" /> <RowDefinition Height="Auto" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="100" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <Label Grid.Column="0" Grid.Row="0" Content="First Name" /> <Label Grid.Column="0" Grid.Row="1" Content="Las Name" /> <TextBox Grid.Column="1" Grid.Row="0" Width="150" MaxLength="50" HorizontalAlignment="Left" VerticalAlignment="Top" Text="{Binding Path=FirstName, Mode=TwoWay}" /> <TextBox Grid.Column="1" Grid.Row="1" Width="150" MaxLength="50" HorizontalAlignment="Left" VerticalAlignment="Top" Text="{Binding Path=LasName, Mode=TwoWay}" /> </Grid> </Border> </UserControl>
: ViewModel Locator .
, . , , , . DataContext
. , , .
, d:DataContext тАУ d:DesignInstance
, , d:DesignInstance
ред
рдЗрд╕рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдЖрдк рдХреМрди рд╕реЗ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдкреВрд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред рд╕рдВрдЧрддрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рддреА рд╣реИ рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рдмреАрдЪ рдПрдХ рд╕рдлрд▓ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддреА рд╣реИред
рдбрд┐рдЬрд╛рдЗрди рд╕рдордп рдирдореВрдирд╛ рдЧрд╛рдЗрдб
WPF рдФрд░ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдбрд┐рдЬрд╝рд╛рдЗрди рдЯреАрдо рдиреЗ рдПрдХ рдЧрд╣рди рд▓реЗрдЦ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ WPF рдФрд░ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред MSDN рдкрд░ рдПрдХ рд▓реЗрдЦ рдЙрдкрд▓рдмреНрдз рд╣реИ: "WPF рдФрд░ рд╕рд┐рд▓реНрд╡рд░рд▓рд╛рдЗрдЯ рдбрд┐рдЬрд╛рдЗрдирд░ рдореЗрдВ рдирдореВрдирд╛ рдбреЗрдЯрд╛ ред "рдирдореВрдирд╛ рдбреЗрдЯрд╛ ( рдбрд┐рдЬрд╝рд╛рдЗрди-рдЯрд╛рдЗрдо рдирдореВрдирд╛ рдбреЗрдЯрд╛ ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рд╡рд┐рдЬрд╝реБрдЕрд▓ рдбрд┐рдЬрд╝рд╛рдЗрди рдЯреВрд▓ рдЬреИрд╕реЗ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдпрд╛ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдирдореВрдирд╛ рдбреЗрдЯрд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рджреГрд╢реНрдпреЛрдВ рдХреЛ рдбреЗрдЯрд╛ рдФрд░ рдЫрд╡рд┐рдпреЛрдВ рд╕реЗ рднрд░рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдбрд┐рдЬрд╛рдЗрдирд░ рдХреЗ рдХрд╛рдо рдХреЛ рдмрд╣реБрдд рд╕рд░рд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрд╕реЗ рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рдмрдирд╛рддрд╛ рд╣реИредрдЬрдм рддрдХ рдЖрдк рдЙрдирд╕реЗ рдбреЗрдЯрд╛ рдирд╣реАрдВ рдЬреЛрдбрд╝реЗрдВрдЧреЗ, рддрдм рддрдХ рдбреЗрдЯрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡рд╛рд▓реА рдЦрд╛рд▓реА рд╕реВрдЪрд┐рдпрд╛рдБ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрдВрдЧреАред рдЗрд╕рд▓рд┐рдП, рдЕрджреГрд╢реНрдп рдбреЗрдЯрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдФрд░ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдирд╛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╡реЗ рдХреИрд╕реЗ рджрд┐рдЦрддреЗ рд╣реИрдВ рдХрд╛рдо рдХреЛ рдмрд╣реБрдд рдзреАрдорд╛ рдХрд░ рджреЗрдВрдЧреЗ рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреА рдирд╕реЛрдВ рдкрд░ рдкрд╣реБрдВрдЪ рдЬрд╛рдПрдВрдЧреЗредрд╕ рд╕ рд╕ рд╕ рд╕ рд╕
рдЖрдк рдирд┐рдореНрди рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:- рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб XML рдирдореВрдирд╛ рдбреЗрдЯрд╛
- рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб 4 рдФрд░ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдПрдХреНрд╕рдПрдПрдордПрд▓ рдирдореВрдирд╛ рдбреЗрдЯрд╛
- XAML рд╕рдВрд╕рд╛рдзрди
- рдХреЛрдб
рдЗрди рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдкрд░ рдиреАрдЪреЗ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИредрдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб XML рдирдореВрдирд╛ рдбреЗрдЯрд╛
рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдЖрдкрдХреЛ XML рд╕реНрдХреАрдорд╛ рдмрдирд╛рдиреЗ рдФрд░ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдмрдВрдзрд┐рдд XML рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреЙрдкреНрдпреБрд▓реЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдХрд┐рд╕реА рднреА рдмрд╛рд╣рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд┐рдирд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИредрдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдпрд╣ рд╣реИ рдХрд┐ рдбрд┐рдЬрд╛рдЗрдирд░ рдЖрд╡рд╢реНрдпрдХ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд┐рдП рдмрд┐рдирд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддрд╛ рд╣реИредрд╣рд╛рд▓рд╛рдБрдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдбрд┐рдЬрд╝рд╛рдЗрдирд░ рджреЛрдиреЛрдВ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ, рдПрдХреНрд╕рдПрдордПрд▓ рд╕реИрдВрдкрд▓ рдбреЗрдЯрд╛ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдореЗрдВ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИредрдиреЛрдЯред
рдирдореВрдирд╛ XML рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдпрд╛ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, XML рд╕реНрдХреАрдорд╛ рдХреЛ рдЕрдВрддрд┐рдо рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб 4 рдФрд░ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдПрдХреНрд╕рдПрдПрдордПрд▓ рд╕реИрдВрдкрд▓ рдбреЗрдЯрд╛
рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб 4 рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реБрдП, рдПрдХ рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ d:DesignData
рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдирдореВрдирд╛ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИредрдирдореВрдирд╛ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдПрдХ XAML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдорд╛рд░реНрдХрдЕрдк рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдпрд╛ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдХреБрдЫ рдбреЗрдЯрд╛ рдХреЛ рдЙрдирдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛рддрд╛ рд╣реИредрдЗрд╕рдореЗрдВ d:DesignData
рдПрдХ рд╕рдВрдкрддреНрддрд┐ рд╣реИ Source
рдЬреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕реНрдерд┐рдд рдПрдХ XAML рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓ рдкрд░ URI рд▓реЗрддрд╛ рд╣реИред рдорд╛рд░реНрдХрдЕрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди d:DesignData
рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддрд╛ рд╣реИ, рдЗрд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдЧреНрд░рд╛рдл рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рд╕рдВрдкрддреНрддрд┐ d:DataContext
, рд╕рдВрдкрддреНрддрд┐ CollectionViewSource d:DesignSource
рдпрд╛ рд╕рдВрдкрддреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ DomainDataSource d:DesignData
редрдПрдХреНрд╕рдЯреЗрдВрд╢рди рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХреА рдЧрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХd:DesignData
, рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╕реНрдЯрдо рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдмрдирд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, WCF RIA рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ, рд╕реЗрд╡рд╛ рдирд┐рдХрд╛рдп рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛрдб рдореЗрдВ рдирд╣реАрдВ рдмрдирд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдЕрдкрдиреЗ рдЧреИрд░-рдирд┐рд░реНрдорд┐рдд рдкреНрд░рдХрд╛рд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЖрдк рдЕрднреА рднреА рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗредрдЖрдк рдиреАрдЪреЗ рджрд┐рдЦрд╛рдП рдЧрдП рддрд░реАрдХреЗ рд╕реЗ d:DesignData
рдЕрдкрдиреЗ рдбреЗрдЯрд╛ рдХрд╛ рдирдореВрдирд╛ рд╕реЙрд▓реНрдпреВрд╢рди рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдореЗрдВ рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓ рдХреА рдмрд┐рд▓реНрдб рдПрдХреНрд╢рди рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рд╕реЗрдЯ рдХрд░рдХреЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ :- рдмрд┐рд▓реНрдб рдПрдХреНрд╢рди = рдбрд┐рдЬрд╛рдЗрдирдбреЗрдЯрд╛ - рдЫрджреНрдо рдкреНрд░рд╛рд░реВрдк рдмрдирд╛рдП рдЬрд╛рдПрдВрдЧреЗ
- рдмрд┐рд▓реНрдб рдПрдХреНрд╢рди = DesignDataWithDesignTimeCreatableTypes - рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдП рдЬрд╛рдПрдВрдЧреЗ
рдЬрдм рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ XAML рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрдирдбреИрдЯрд╛ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдмрд┐рд▓реНрдб рдПрдХреНрд╢рди рд╣реЛрддрд╛ рд╣реИ ред рдпрджрд┐ рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ Visual Studio рдореЗрдВ рд╕рдорд╛рдзрд╛рди рдЦреЛрд▓реЗрдВ рдФрд░ рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП Build Action рдХреЛ DesignDataWithDesignTimeCreatableTypes рдореЗрдВ рдмрджрд▓реЗрдВ редрдиреЛрдЯред
, Custom Tool . . , Expression Blend .
Visual Studio 2010, , . , Build Action Custom Tool .
рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб рдЪрдпрдирд╛рддреНрдордХ XAML рдбреЗрдЯрд╛ рдмрдирд╛рдиреЗ рдФрд░ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдХреЗ рдбрд┐рдЬрд╝рд╛рдЗрдирд░ рдореЗрдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рдЪрд┐рддреНрд░рдг рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИредрдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдмреНрд▓реЗрдВрдб 4 рдореЗрдВ рд╕реИрдВрдкрд▓реНрдб рдбреЗрдЯрд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛, рд╕реИрдВрдкрд▓реНрдб рдбреЗрдЯрд╛
рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдбреЗрдЯрд╛ рдкреИрдирд▓ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛, рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИредрдбреЗрдЯрд╛ рдкреИрдирд▓ред
рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдк рдЙрдиреНрд╣реЗрдВ рджреГрд╢реНрдп рдХреЗ рдореВрд▓ рддрддреНрд╡ рдкрд░ рдЦреАрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ UserControl
рдХрд┐ рдпрд╣ рдареАрдХ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдЧрд╛ d:DataContext
ред рдЖрдк рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рднреА рдЦреАрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ ItemsControl
, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдмреНрд▓реЗрдВрдб рдЙрд╕ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдВрдзрди рдмрдирд╛рдПрдЧрд╛редрдиреЛрдЯред
рдЕрдВрддрд┐рдо XAML рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдпрд╛ рдЕрдВрддрд┐рдо рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
XAML рд╕рдВрд╕рд╛рдзрди
рдЖрдк XAML рдореЗрдВ рдПрдХ рд╕рдВрд╕рд╛рдзрди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдБ рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ DataContext
рдпрд╛ рд╕реВрдЪреА рдореЗрдВ рдмрд╛рдБрдз рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ редрдЗрд╕ рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдбреЗрдЯрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ-рдмрд╛рд░ рдбреЗрдЯрд╛ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИредрдХреЛрдб
рдпрджрд┐ рдЖрдк рдХреЛрдб рдореЗрдВ рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдмрдирд╛рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдПрдХ рд╡рд░реНрдЧ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдЧреБрдг рдФрд░ рддрд░реАрдХреЗ рд╣реИрдВ рдЬреЛ рдирдореВрдирд╛ рдбреЗрдЯрд╛ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рдРрд╕рд╛ рд╡рд░реНрдЧ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, Customers
рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдорд╛рдирдХ рдкреИрд░рд╛рдореАрдЯрд░ рд░рд╣рд┐рдд рдирд┐рд░реНрдорд╛рддрд╛ Customer
рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рд╕реЗ рднрд░реЗ рд╡рд░реНрдЧ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЦреБрдж рдХреЛ рднрд░рддрд╛ рд╣реИ редрдЗрд╕ рддрд░рд╣ рдХреЗ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ d:DataContext тАФ d:DesignInstance
рд╕рдВрдкрддреНрддрд┐ d:DesignInstance.IsDesignTimeCreatable
рдХреЛ рд╕реЗрдЯ рдХрд░рдХреЗ рдПрдХ рдмрдВрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ true
, рддрд╛рдХрд┐ рдХреЛрдб рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛред рдпрджрд┐ рдпрд╣ рд╕рдВрдкрддреНрддрд┐ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдПрдХ рдЫрджреНрдо рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдХреЗрд╡рд▓ рдкреНрд░рдХрд╛рд░ рдбреЗрдЯрд╛ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рджреМрд░рд╛рди рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛редрдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд XAML рдПрдХ рд╡рд░реНрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдиреЗ Customers
рдФрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ d:DataContext
ред рдХреЗ рд╕рд╣рд╛рдпрдХGrid
рдирд┐рдпрдВрддреНрд░рдг рддрдм рд╡рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдирдореВрдирд╛ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ Customers
ред <Grid d:DataContext="{d:DesignInstance local:Customers, IsDesignTimeCreatable=True}">
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд▓реЗрдЖрдЙрдЯ рдмрдирд╛рддреЗ рд╕рдордп рдореБрдЦреНрдп рдирд┐рд░реНрдгрдп
рдПрдХ рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬреЛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдмрджрд▓рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдпреЗ рд╕рдВрдкреВрд░реНрдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕реНрддрд░ рдХреЗ рдирд┐рд░реНрдгрдп рд╣реИрдВ, рдФрд░ рдЙрдирдХреА рд╕реНрдерд┐рд░рддрд╛ рд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреА рдЙрддреНрдкрд╛рджрдХрддрд╛ рдмрдврд╝ рдЬрд╛рдПрдЧреАредрдпреЗ рд╕рдорд╛рдзрд╛рди рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ:- рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░рд╡рд╛рд╣ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ рдФрд░ рдЙрд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░реЗрдВред
- рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ рдХрд┐ рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
- рддрдп рдХрд░реЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдХреНрд╖реЗрддреНрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ ред
- , (MVVM, presentation model, ).
- .
рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА
рдкреНрд░рд┐рдЬреНрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, " рдкреНрд░рд┐рдЬрд╝реНрдо рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ " рджреЗрдЦреЗрдВ редрдЖрджреЗрд╢реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рднрд╛рдЧ 5 рдореЗрдВ " рдХрдорд╛рдВрдб " рджреЗрдЦреЗрдВ , " рдПрдорд╡реАрд╡реАрдПрдо рдкреИрдЯрд░реНрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ ред"рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рднрд╛рдЧ 5 рдореЗрдВ " рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ " рджреЗрдЦреЗрдВ , " рдПрдорд╡реАрд╡реАрдПрдо рдкреИрдЯрд░реНрди рд▓рд╛рдЧреВ рдХрд░рдирд╛ ред"рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рднрд╛рдЧ 8, " рдиреЗрд╡рд┐рдЧреЗрд╢рди рджреЗрдЦреЗрдВ ред"рдЗрд╕ рдЕрдзреНрдпрд╛рдп рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдЧрд╛рдЗрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рджреЗрдЦреЗрдВ: