WriteableBitmap.WritePixels 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
更新可写位图的像素。
重载
WritePixels(Int32Rect, Array, Int32, Int32) |
更新位图指定区域中的像素。 |
WritePixels(Int32Rect, IntPtr, Int32, Int32) |
更新位图指定区域中的像素。 |
WritePixels(Int32Rect, Array, Int32, Int32, Int32) |
更新位图指定区域中的像素。 |
WritePixels(Int32Rect, IntPtr, Int32, Int32, Int32, Int32) |
更新位图指定区域中的像素。 |
WritePixels(Int32Rect, Array, Int32, Int32)
更新位图指定区域中的像素。
public:
void WritePixels(System::Windows::Int32Rect sourceRect, Array ^ pixels, int stride, int offset);
[System.Security.SecurityCritical]
public void WritePixels (System.Windows.Int32Rect sourceRect, Array pixels, int stride, int offset);
public void WritePixels (System.Windows.Int32Rect sourceRect, Array pixels, int stride, int offset);
[<System.Security.SecurityCritical>]
member this.WritePixels : System.Windows.Int32Rect * Array * int * int -> unit
member this.WritePixels : System.Windows.Int32Rect * Array * int * int -> unit
Public Sub WritePixels (sourceRect As Int32Rect, pixels As Array, stride As Integer, offset As Integer)
参数
- sourceRect
- Int32Rect
要更新的 WriteableBitmap 的矩形。
- pixels
- Array
用来更新位图的像素数组。
- stride
- Int32
pixels
中更新区域的步幅。
- offset
- Int32
输入缓冲区偏移量。
- 属性
例外
pixels
为 null
。
pixels
的级别不为 1 或 2,或者其长度小于或等于 0。
示例
下面的代码示例演示如何使用 WritePixels 方法更新后台缓冲区中的像素。
static void ErasePixel(MouseEventArgs e)
{
byte[] ColorData = { 0, 0, 0, 0 }; // B G R
Int32Rect rect = new Int32Rect(
(int)(e.GetPosition(i).X),
(int)(e.GetPosition(i).Y),
1,
1);
writeableBitmap.WritePixels( rect, ColorData, 4, 0);
}
注解
WritePixels(Int32Rect, Array, Int32, Int32, Int32)和 WritePixels(Int32Rect, IntPtr, Int32, Int32, Int32, Int32) 重载优先于使用此方法。
注意
在部分信任中,使用 WritePixels(Int32Rect, Array, Int32, Int32, Int32) 重载。
适用于
WritePixels(Int32Rect, IntPtr, Int32, Int32)
更新位图指定区域中的像素。
public:
void WritePixels(System::Windows::Int32Rect sourceRect, IntPtr buffer, int bufferSize, int stride);
[System.Security.SecurityCritical]
public void WritePixels (System.Windows.Int32Rect sourceRect, IntPtr buffer, int bufferSize, int stride);
public void WritePixels (System.Windows.Int32Rect sourceRect, IntPtr buffer, int bufferSize, int stride);
[<System.Security.SecurityCritical>]
member this.WritePixels : System.Windows.Int32Rect * nativeint * int * int -> unit
member this.WritePixels : System.Windows.Int32Rect * nativeint * int * int -> unit
Public Sub WritePixels (sourceRect As Int32Rect, buffer As IntPtr, bufferSize As Integer, stride As Integer)
参数
- sourceRect
- Int32Rect
要更新的 WriteableBitmap 的矩形。
- buffer
-
IntPtr
nativeint
用来更新位图的输入缓冲区。
- bufferSize
- Int32
输入缓冲区的大小。
- stride
- Int32
buffer
中更新区域的步幅。
- 属性
例外
buffer
为 null
。
注解
WritePixels(Int32Rect, Array, Int32, Int32, Int32)和 WritePixels(Int32Rect, IntPtr, Int32, Int32, Int32, Int32) 重载优先于使用此方法。
注意
在部分信任中,使用 WritePixels(Int32Rect, Array, Int32, Int32, Int32) 重载。
适用于
WritePixels(Int32Rect, Array, Int32, Int32, Int32)
更新位图指定区域中的像素。
public:
void WritePixels(System::Windows::Int32Rect sourceRect, Array ^ sourceBuffer, int sourceBufferStride, int destinationX, int destinationY);
[System.Security.SecurityCritical]
public void WritePixels (System.Windows.Int32Rect sourceRect, Array sourceBuffer, int sourceBufferStride, int destinationX, int destinationY);
public void WritePixels (System.Windows.Int32Rect sourceRect, Array sourceBuffer, int sourceBufferStride, int destinationX, int destinationY);
[<System.Security.SecurityCritical>]
member this.WritePixels : System.Windows.Int32Rect * Array * int * int * int -> unit
member this.WritePixels : System.Windows.Int32Rect * Array * int * int * int -> unit
Public Sub WritePixels (sourceRect As Int32Rect, sourceBuffer As Array, sourceBufferStride As Integer, destinationX As Integer, destinationY As Integer)
参数
- sourceRect
- Int32Rect
sourceBuffer
中要复制的矩形。
- sourceBuffer
- Array
用来更新位图的输入缓冲区。
- sourceBufferStride
- Int32
输入缓冲区的步幅(以字节为单位)。
- destinationX
- Int32
后台缓冲区最左端像素的目标 x 坐标。
- destinationY
- Int32
后台缓冲区最顶端像素的目标 y 坐标。
- 属性
例外
存在下列一种或多种情况时。
sourceRect
处于 WriteableBitmap 的界限外。
destinationX
或 destinationY
在 WriteableBitmap 的界限外。
sourceBufferStride
< 1
sourceBuffer
为 null
。
sourceBuffer
的级别不为 1 或 2,或者其长度小于或等于 0。
注解
WritePixels调用 方法以WriteableBitmap使用 的内容sourceBuffer
自动更新 。 调用此方法等效于使用Lock类备注中所述的 WriteableBitmap 和 Unlock 工作流。
注意
在部分信任中使用此重载。
另请参阅
适用于
WritePixels(Int32Rect, IntPtr, Int32, Int32, Int32, Int32)
更新位图指定区域中的像素。
public:
void WritePixels(System::Windows::Int32Rect sourceRect, IntPtr sourceBuffer, int sourceBufferSize, int sourceBufferStride, int destinationX, int destinationY);
[System.Security.SecurityCritical]
public void WritePixels (System.Windows.Int32Rect sourceRect, IntPtr sourceBuffer, int sourceBufferSize, int sourceBufferStride, int destinationX, int destinationY);
public void WritePixels (System.Windows.Int32Rect sourceRect, IntPtr sourceBuffer, int sourceBufferSize, int sourceBufferStride, int destinationX, int destinationY);
[<System.Security.SecurityCritical>]
member this.WritePixels : System.Windows.Int32Rect * nativeint * int * int * int * int -> unit
member this.WritePixels : System.Windows.Int32Rect * nativeint * int * int * int * int -> unit
Public Sub WritePixels (sourceRect As Int32Rect, sourceBuffer As IntPtr, sourceBufferSize As Integer, sourceBufferStride As Integer, destinationX As Integer, destinationY As Integer)
参数
- sourceRect
- Int32Rect
sourceBuffer
中要复制的矩形。
- sourceBuffer
-
IntPtr
nativeint
用来更新位图的输入缓冲区。
- sourceBufferSize
- Int32
输入缓冲区的大小。
- sourceBufferStride
- Int32
输入缓冲区的步幅(以字节为单位)。
- destinationX
- Int32
后台缓冲区最左端像素的目标 x 坐标。
- destinationY
- Int32
后台缓冲区最顶端像素的目标 y 坐标。
- 属性
例外
存在下列一种或多种情况时。
sourceRect
处于 WriteableBitmap 的界限外。
destinationX
或 destinationY
在 WriteableBitmap 的界限外。
sourceBufferSize
< 1
sourceBufferStride
< 1
sourceBuffer
为 null
。
注解
WritePixels调用 方法以WriteableBitmap使用 的内容sourceBuffer
自动更新 。 调用此方法等效于使用Lock类备注中所述的 WriteableBitmap 和 Unlock 工作流。
注意
在部分信任中,使用 WritePixels(Int32Rect, Array, Int32, Int32, Int32) 重载。