ამ ნაწილში ავხსნი
თ როგორ შეგვიძლია გამოვიყენოთ ფუნჯები WPF ში უკანა და წინა ხედისთვის ფერის მისაცემად. ფუნჯები თავის მხრივ იყოფიან
რამდენიმე ნაწილად და ვაპირებ თითოეულ მათგანს შევეხო იმ დონეზე, რომ იყოს გასაგები,
შემდეგ კი იმპროვიზაციას შეგიძლიათ მიმართოთ, სხვადასხვა კომბინაციების გამოყენებით
და სასურველი შედეგის მისაღებად. დავიწყოთ ფუნჯების ვარიაციების განხილვა
SolidColorBrush
ზემოთ მოცემული
ღილაკი იყენებს SolidColorBrush ს, როგორც ამჩნევთ მთლიანი ფართი დაფარულია ერთი და იმავე ფერით. ჩვეულებრივ
SolidColorBrush ის გამოყენების გარეშეც შესაძლებელია ღილაკ კონტროლისთვის ფერის მინიჭება,
რაშიც მისი თვისება Background
ი გვეხმარება, რომელიც ტექსტურ ცვლადს აფორმატებს ფერში.
LinearGradientBrush
ფერების უფრო
დინამიური და გლუვი ცვლილებებისთვის შესაძლებელია გამოიყენოთ LinearGradientBrush,
როგორც ქვემოთ არის ნაჩვენები ეს ფუნჯი განსაზღვრავს StartPoint და EndPoint თვისებებს. ამ
თვისებების გამოყენებით შესაძლებელია ორ განზომილებიანი კოორდინატების დანიშვნა ფუნჯისთვის.
სტანდარტული ფუნჯი, რომელიც არის gradient
ტიპის იყენებს დიაგონალურ მნიშვნელობებს, რაც იმას ნიშნავს, რომ იწყება
0,0 კოორდინატში და სრულდება 1,1 კოორდინატში, რომელიც მაქსიმალურია მისთვის და წარმოადგენს
ფიგურის დასასრულს. სხვა მნიშვნელობებისთვის გრადაციამ შეიძლება შეიცვალოს მიმართულებები.
მაგალითისთვის ავიღოთ StartPoint
0,0 და EndPoint
0,1 მივიღებთ ვერტიკალურ გრადაციას.
ამ ფუნჯის შიგთავსის
გათვალისწინებით, შესაძლებელია ფიგურის წერტილებში განსაზღვროთ სასურველი ფერის დაწყების
კოორდინატები. GradientStop ელემენტის გამოყენებით.
RadialGradientBrush
RadialGradientBrush ის გამოყენებით შესაძლებელია ფერების გლუვი განაწილება წრიული ფორმით.
ეს ფუნჯი განსაზღვრავს ფერის საწყისს, რომელიც იწყება GradientOrigin წერტილიდან.
ImageBrush
სურათზე ფუნჯის
გადასატარებლად საჭიროა სურათი და ImageBrush
ელემენტი, რომელიც ამის საშუალებას გაძლევთ. ამ ელემენტშივე ხდება სურათის
წყაროს მითითება
<Button
Content="Image Brush" Width="100" Height="80"
Margin="5"
Foreground="White">
<Button.Background>
<ImageBrush
ImageSource="/BrushesDemo; component/Budapest.jpg" />
</Button.Background>
</Button>
VisualBrush
ის გამოყენებით შესაძლებელია
WPF ის სხვა ელემენტების გამოყენება, როგორც ფუნჯი.
შეგიძლიათ, WPF ელემენტს
დაუმატოთ Visual თვისება. ვნახოთ ოთხკუთხედისა
და ღილაკის კომბინაცია.
ამის შემდეგ შემიძლია
განვიხილო მომენტი, როდესაც საჭიროა VisualBrush
ს დავუმატო ნებისმიერი UIElement.
განვიხილავ MediaElement ის დამატებას. ამისთვის საჭირო
იქნება, ჩემი მაგალითის გათვალისწინებით solution Explorerში შევქმნათ ახალი
ფაილი, ან პირდაპირ იქ დავამატოთ მედია ელემენტი, რომელის გამოყენებაც გვინდა. ჩემი
solution Explorer ასე
გამოიყურება:
VisualBrush
ის დახმარებით შესაძლებელია ბევრი საინტერესო ეფექტის გაკეთება, მათ შორის
არის არეკვლის ეფექტი, რომელსაც შემოგთავაზებთ.
ღილაკი, რომელიც
ნაჩვენებია შეიცავს StackPanelს,
რომელიც თავის მხრივ შეიცავს MediaElementს,
რომელიც ჩვენთვის ნაცნობია და Borderს.
Border შეიცავს Rectangle, რომელიც ივსება VisualBrush ით.
ეს ფუნჯი განსაზღვრავს გამჭვირვალობასა და ტრანსფორმაციას. ტრანსფორმაცია ხდება RelativeTransform ის
დახმარებით, რომელიც არის VisualBrush ის თვისება და იყენებს ფარდობით კოორდინატებს. scaleY = -1 ით Y კოორდინატზე კეთდება
არეკვლის ეფექტი, ანუ სურათი ტრიალდება, ხოლო TranslateTransform ჩამოაქვს ამოტრიალებული სურათი
ქვემოთ, სადაც წესით უნდა იყოს არეკვლა. მონაცემთა კავშირს ავხსნი მოგვიანებით, (Viusal = “{Binding ElementName =
reflected}”).
No comments:
Post a Comment