Yazılım

UWP uygulamasında ölçeklendirme

Yazılım Mimarı olarak, çeşitli projelerine yardımcı olduğum bir müşteride UWP uygulamalarının birinde nesneleri çeşitli sebeplerden dolayı ölçeklendirmemiz gerekti.

Ölçeklendirme (Scaling) işini yazılımsal yapmamız gerekiyordu.

İnternette yaptığım araştırmalar sonucunda en verimli yolun XAML Binding‘ler ile olduğunu buldum.

Böylece ölçeklendirme işini ekran kartının işlemcisine (GPU) bırakabiliyoruz. Bilgisayarın işlemcisi (CPU) ise bizim asıl yapmasını istediğimiz işler için müsait kalıyor, örneğin, veritabanı işlemleriweb servis işlemleri, vs.

Hemen yeni bir Blank App (Universal Windows) projesi oluşturalım;

MainPage.xaml dosyasını açalım ve içerisine aşağıdaki kodları yazalım;

<Page
x:Class=UWPScalingSample.MainPage
xmlns=http://schemas.microsoft.com/winfx/2006/xaml/presentation
xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml>
<Grid Background={ThemeResource ApplicationPageBackgroundThemeBrush}>
<Grid.RowDefinitions>
<RowDefinition Height=Auto />
<RowDefinition Height=* />
</Grid.RowDefinitions>
<Slider x:Name=Slider Grid.Row=0 Minimum=0.5 Maximum=3 StepFrequency=0.1 Value=1 />
<Grid Grid.Row=1>
<Grid.RenderTransform>
<ScaleTransform ScaleX={x:Bind Slider.Value, Mode=OneWay} ScaleY={x:Bind Slider.Value, Mode=OneWay} />
</Grid.RenderTransform>
<StackPanel>
<StackPanel Orientation=Horizontal>
<TextBlock Style={StaticResource TitleTextBlockStyle} Text=Title VerticalAlignment=Center />
<TextBlock Style={StaticResource HeaderTextBlockStyle} Text=Header VerticalAlignment=Center />
<TextBlock Style={StaticResource SubheaderTextBlockStyle} Text=Subheader VerticalAlignment=Center />
<TextBlock Style={StaticResource BodyTextBlockStyle} Text=Body VerticalAlignment=Center />
</StackPanel>
<Image Source=http://enginpolat.com/assets/uploads/2015/07/CustomizeTitleBarUWP.png Width=600 Height=300 Stretch=Uniform />
<StackPanel Orientation=Horizontal>
<Button Margin=4 Content=Test />
<Button Margin=4 Content=Test />
<ListBox>
<ListBoxItem Content=Item />
<ListBoxItem Content=Item />
</ListBox>
<ComboBox>
<ComboBoxItem Content=Item />
<ComboBoxItem Content=Item />
</ComboBox>
</StackPanel>
</StackPanel>
</Grid>
</Grid>
</Page>
Click to comment

CEVAP BIRAKIN

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Copyright © 2018 Web Sitesi üzerinde yayınlanan tüm içerikler www.ogzblg.com sitesine aittir. Toplist 25 Yandex.Metrica

To Top