public D2D1RadialGradientBrush CreateRadialGradientBrush(D2D1RadialGradientBrushProperties radialGradientBrushProperties, D2D1BrushProperties brushProperties, D2D1GradientStopCollection gradientStopCollection) { if (gradientStopCollection == null) { throw new ArgumentOutOfRangeException("gradientStopCollection"); } ID2D1RadialGradientBrush radialGradientBrush; GCHandle brushPropertiesHandle = GCHandle.Alloc(brushProperties, GCHandleType.Pinned); try { this.GetHandle<ID2D1RenderTarget>().CreateRadialGradientBrush(ref radialGradientBrushProperties, brushPropertiesHandle.AddrOfPinnedObject(), gradientStopCollection.GetHandle<ID2D1GradientStopCollection>(), out radialGradientBrush); } finally { brushPropertiesHandle.Free(); } return new D2D1RadialGradientBrush(radialGradientBrush); }
public D2D1RadialGradientBrush CreateRadialGradientBrush(D2D1RadialGradientBrushProperties radialGradientBrushProperties, D2D1GradientStopCollection gradientStopCollection) { if (gradientStopCollection == null) { throw new ArgumentOutOfRangeException("gradientStopCollection"); } ID2D1RadialGradientBrush radialGradientBrush; this.GetHandle<ID2D1RenderTarget>().CreateRadialGradientBrush(ref radialGradientBrushProperties, IntPtr.Zero, gradientStopCollection.GetHandle<ID2D1GradientStopCollection>(), out radialGradientBrush); return new D2D1RadialGradientBrush(radialGradientBrush); }