, -, framework ( , , , ,...
, , ImageSource, , - .
: - , , , .
, , GridCombiner , DataGridMyData ImageBackground .
, , , , .
public ImageSource ToImageSource(FrameworkElement obj)
{
Transform transform = obj.LayoutTransform;
obj.LayoutTransform = null;
Size size = new Size(obj.Width, obj.Height);
obj.Measure(size);
obj.Arrange(new Rect(size));
RenderTargetBitmap bmp = new RenderTargetBitmap(
(int)obj.Width, (int)obj.Height, 96, 96, PixelFormats.Pbgra32);
bmp.Render(obj);
obj.LayoutTransform = transform;
return bmp;
}
public ImageSource ToImageSource(FrameworkElement obj)
{
Transform transform = obj.RenderTransform;
obj.RenderTransform = null;
Size size = new Size(obj.Width, obj.Height);
obj.Measure(size);
obj.Arrange(new Rect(new Point(), size));
WriteableBitmap bmp = new WriteableBitmap(obj, transform);
bmp.Render(obj, transform);
obj.RenderTransform = transform;
return bmp;
}
xaml :
<Grid x:Name="GridCombiner" Width="300" Height="150">
<Image x:Name="ImageBackground" Source="c:/myimg.jpg" Width="300" Height="150" />
<DataGrid x:Name="DataGridMyData" ItemsSource="{Binding}" Width="300" Height="150" />
</Grid>