ამ ტუტორიალში, შევეცდები ოდნავ მაინც შევეხო და განვიხილო WPF ის ძირითადი სახელსივრცეები და კლასები, რომლები გამოიყენება მთელი ამ ტექნოლოგიის ფუქნციონირებისთვისა და მარტივი და მოხერხებული ტექნიკის გამოენებისთვის.
პირველ რიგში, საჭიროა ერთი გაუგებრობის აღმოფხვრა, რადგან შეიძლება ამან ხელი შეგიშალოთ Windows Forms და WPFის კლასების გარჩევაში. საზოგადოდ, Windows Forms ის კლასები მოთავსებულია System.Windows.Forms სახელსივრცეში, როცა WPF ის კლასები მოთავსებულებიარიან System.Windows სახელსივრცეში. მაგალითისთვის რომ ავიღოთ TextBox კლასი, ის მოთავსებულია Windows Forms ებისათვის System.Windows.Forms.TextBox სახელსივრცეში, ხოლო WPF ისთვის მოთავსებულია System.Windows.Controls.TextBox ში. ქვემოთ მოცემულია WPF ის ძირითადი სახელსივრცეები და მათი დანიშნულება
System.Windows | ეს არის WPF ის ძირითადი სახელსივრცე. აქ შეიძლება ისეთი კლასების პოვნა, როგორიცაა Applocation, DependancyObject, DependencyProperty და ყველა WPF ის ელემენტის საბაზისო კლასი FrameworkElement. |
System.Windows.Annotations | ეს კლასი არის მხოლოდ მომხმარებლის მიერ შექმნილი ანოტაციებისთვისა და ჩანაწერებისათვის აპლიკაციის მონაცემებზე, რომელიც მოთავსებულია განცალკევებით დოკუმენტში. System.Windows.Annotations.Storage კლასი კი შეიცავს კლასებს ანოტაციების მოსათავსებლად. |
System.Windows.Automation | სახელსივრცე, რომლის დახმარებითაც ხდება WPF აპლიკაციის ავტომატიზაცია. ეს სახელსივრცე თავის მხრივ შეიცავს System.Windows.Automation.Peers სახელსივრცეს, რომელიც WPF ელემენტების ავტომატიზაციისთვის გამოიყენება, ხოლო თუ საჭირო გახდა მომხმარებლის მიერ ავტომატიზაციის შექმნა, მაშინ შეგიძლიათ გამოიყენოთ System.Windows.Automation.Provider სახელსივრცე. |
System.Windows.Baml2006 | ეს სახელსივრცე ახალია WPF ისთვის და შემოსულია .NET 4 თან ერთად და შეიცავს Baml2006Reader კლასს, რომელიც გამოიყენება ორობით მონიშვნის წასაკითხად, ხოლო თვითონ ქმნის XAML ს. |
System.Windows.Controls | ამ სახელსივრცეში შესაძლებელია ყველა WPF კონტროლის პოვნა. ხოლო ქვე სახელსივრცეში System.Windows.Controls.Primitives შესაძლებელია იმ კლასების პოვნა, რომელიც გამოიყენება კომპლექსური კონტროლების შექმნისთვის. |
System.Windows.Converters | აქ მოთავსებულ კლასებს შეუძლიათ მონაცემთა კონვერტირება. მაგრამ ყველა კონვერტორი არ არის ამ სახელსივრცეში. საბაზისო კონვერტორები არის System.Windows სახელსივრცეში. |
System.Windows.Data | სახელსივრცე, რომელიც გამოიყენება მონაცემთა გადაბმისათვის. უმნიშვნელოვანესი კლასია Binding, რომელიც შესაბამისობას ამყარებს WPF სამიზნე ელემენტსა და CLR წყაროს შორის. |
System.Windows.Documents | დოკუმენტებთან მუშაობისას ამ სახელსივრცეში შესაძლებელია გამოსადეგი კლასების გამოყენება. System.Windows.Documents.Serializtion კლასის გამოყენებით შესაძლებელია დოკუმენტების დისკზე ჩაწერაც. |
System.Windows.Ink | თანამედროვე მოწყობილობების გათვალისწინებით, ტაბლეტები და სმარტფონები საკმაოდ გამოყენებადია. ამ სახელსივრცის გამოყენებით ხდება მომხმარებლის მოძრაობების ინიციალიზება. |
System.Windows.Input | შედის კლასები ბრძანებების მოგვარებისთვის, კლავიატურიდან ინფორმაციის აღსაქმელად, სტილუსთან სამუშაოდ და ასე შემდეგ. |
System.Windows.Interop | Win32 ისა და WPF ის ინტეგრაციისთვის შესაძლებელია კლასების გამოყენება. |
System.Windows.Markup | XAML ის მონიშვნის კოდის დამხმარე კლასები |
System.Windows.Media | მოთავსებულია კლასები ვიდეო, აუდიო და სურათებთან სამუშაოდ. |
System.Windows.Navigation | ფანჯრებს შორის სანავიგაციოთ განკუთვნილი კლასების სახლესივრცე. |
System.Windows.Resources | რესურსებთან სამუშაო კლასები |
System.Windows.Shapes | მომხმარებლის ინტერფეისთან მომუშავე ძირითადი კლასების „სათასო“ |
System.Windows.Shapes | WPF ის ელემენტები იყენებენ ერთ ნაკადს. ამ სახელსივრცის გამოყენებით შესაძლებელია ელემენტებმა გამოიყენონ რამდენიმე ნაკადი ერთდროულად. |
WPF შეიცავს ათასობით კლასს ღრმა იერარქიით. ქვემოთ მოცემულია მცირეოდენის ცხრილური განხილვა.
DispatcherObject | არის საბაზისო აბსტრაქტული კლასი იმ კლასებისთვის, რომელიც იყენებენ ერთ ნაკადს. |
Application | WPF აპლიკაციის შექმნისას ავტომატურად იქმნება ამ კლასის ობიექტი, რომელის გავლითაც შესაძლებელია აპლიკაციის ფანჯრებზე, რესურსებზე და თვისებებზე წვდომა. |
DependencyObject | არის საბაზო კლასი ყველა იმ კლასისთვის, რომელსაც შეუძლია დამოკიდებულების თვისების გამოყენება |
Visual | ვიზუალური ელემენტების საბაზო კლასი. კლასს შეუძლია ასევე ტრანსფორმირება და ტესტირება |
UIElement | საბაზო კლასი იმ ელემენტებისთვის, რომლებსაც სჭირდებათ საბაზისო პრეზენტაციის შესაძლებლობა. ეს კლასი გამარაგებთ Tunneling და Bubbling მოვლენებით მაუსის მოძრაობისთვის. |
FrameworkElement | არის UIElement ის მემკვიდრე, რომელიც იმპლემენტაციას უკეთებს წინაპარი კლასის მეთოდებს |
Shape | არის საბაზო კლასი ფორმის ელემენტებისათვის, როგორებიცაა Line, Ellipse, Polygon, Rectangle |
Control | მემკვიდრეა FrameworkElement ის მემკვიდრე, ხოლო თვითონ არის საბაზო კლასი ყველა მომხმარებელთან იტერაქტიული ელემენტისა. |
ContentControl | არის წინაპარი კლასი, რომელიც შეიცავს ერთ კონტენტს - Label, Button. სტანდარტული სტილი ლიმიტირებულია, ხოლო ფუნქციონალურობის გაზრდა შესაძლებელია Template ის გამოყენებით |
ItemControl | არის საბაზისო კლასი ყველა იმ კლასისა, რომელიც შეიცავს წევრების კოლექციას. |
Panel | მემკვიდრეა FrameworUIElement ისა და არის აბსტრაქტული საბაზო კლასი ყველა პანელისთვის. |
No comments:
Post a Comment