Use CroppedBitmap in code
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="ImageElementExample.CroppedImageExample"
Title="CroppedImage Example"
Loaded="PageLoaded">
<Page.Resources>
<BitmapImage x:Key="masterImage" UriSource="c:\image.jpg" />
<CroppedBitmap x:Key="croppedImage" Source="{StaticResource masterImage}" SourceRect="30 20 105 50"/>
</Page.Resources>
<StackPanel>
<Image Width="200" Source="{StaticResource masterImage}"/>
<Image Width="200" Source="{StaticResource croppedImage}"/>
<Image Width="200">
<Image.Source>
<CroppedBitmap Source="{StaticResource croppedImage}" SourceRect="30 0 75 50"/>
</Image.Source>
</Image>
</StackPanel>
</Page>
//File:Window.xaml.vb
Imports System
Imports System.Windows
Imports System.Windows.Documents
Imports System.Windows.Controls
Imports System.Windows.Navigation
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Namespace ImageElementExample
Public Partial Class CroppedImageExample
Inherits Page
Public Sub New()
End Sub
Public Sub PageLoaded(sender As Object, args As RoutedEventArgs)
Dim croppedImage As New Image()
croppedImage.Width = 200
croppedImage.Margin = New Thickness(5)
Dim cb As New CroppedBitmap(DirectCast(Me.Resources("masterImage"), BitmapSource), New Int32Rect(30, 20, 105, 50))
croppedImage.Source = cb
Dim chainImage As New Image()
chainImage.Width = 200
Dim chained As New CroppedBitmap(cb, New Int32Rect(30, 0, CInt(Math.Truncate(cb.Width)) - 30, CInt(Math.Truncate(cb.Height))))
chainImage.Source = chained
End Sub
End Class
End Namespace
Related examples in the same category