WriteableBitmap.Render Method
Silverlight
Renders an element within the bitmap.
Namespace: System.Windows.Media.Imaging
Assembly: System.Windows (in System.Windows.dll)
Parameters
- element
- Type: System.Windows.UIElement
The element to be rendered within the bitmap.
- transform
- Type: System.Windows.Media.Transform
The transform to apply to the element before drawing into the bitmap. If an empty transform is supplied, the bits representing the element show up at the same offset as if they were placed within their parent.
| Exception | Condition |
|---|---|
| ArgumentNullException |
element is null. |
After calling this method, you must call Invalidate in order to render the bitmap.
This method does support UIElement objects that are not part of the visual tree. You are required to call Measure and Arrange for UIElement objects that are not in the visual tree, before calling Render.
If the element is larger than the size of the bitmap, or if the element has any points in the negative regions of its own space, it is clipped as appropriate.
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
Kindof works...
This method kindof works, but it depends on measure and arrange working properly. I have found that measure and arrange are not reliable when not called by the ui thread (or whatever thread normally calls them).
$0$0
$0
$0I have a custom control that renders other controls to bitmaps, then blits them to my custom control. I can't just add the componnets, because it slows the ui down to a crawl... but if I just blit the componets, it is blazing fast. However, my controls do not always arrange/measure properly when I call measure/arrange. I have to call measure/arrange when the main control is measured/arranged or my controls won't attain the correct size.$0
$0$0
$0
$0I would caveat the claim that this method can render controls not on the visual tree, well, because the controls can never be reliably measured/arranged without happening on some undefined ui thread...$0
- 5/2/2012
- michael.newcomb