Comparteix a través de


D3DImage.AddDirtyRect(Int32Rect) Método

Definición

Especifica el área del búfer de reserva que ha cambiado.

public:
 void AddDirtyRect(System::Windows::Int32Rect dirtyRect);
[System.Security.SecurityCritical]
public void AddDirtyRect (System.Windows.Int32Rect dirtyRect);
public void AddDirtyRect (System.Windows.Int32Rect dirtyRect);
[<System.Security.SecurityCritical>]
member this.AddDirtyRect : System.Windows.Int32Rect -> unit
member this.AddDirtyRect : System.Windows.Int32Rect -> unit
Public Sub AddDirtyRect (dirtyRect As Int32Rect)

Parámetros

dirtyRect
Int32Rect

Int32Rect que representa el área que ha cambiado.

Atributos

Excepciones

El mapa de bits no se ha bloqueado mediante una llamada al método Lock() o TryLock(Duration).

o bien El búfer de reserva no se ha asignado mediante una llamada al método SetBackBuffer(D3DResourceType, IntPtr).

Se cumplen una o varias de las condiciones siguientes.

dirtyRect.X < 0 dirtyRect.Y < 0 dirtyRect.Width< 0 o dirtyRect.Width > PixelWidthdirtyRect.Height < 0 o dirtyRect.Height > PixelHeight

Ejemplos

En el ejemplo de código siguiente se muestra cómo llamar al AddDirtyRect método para especificar la región modificada en el búfer de reserva. Para obtener más información, consulte Tutorial: Hospedar contenido Direct3D9 en WPF.

d3dimg.Lock();
// Repeatedly calling SetBackBuffer with the same IntPtr is 
// a no-op. There is no performance penalty.
d3dimg.SetBackBuffer(D3DResourceType.IDirect3DSurface9, pSurface);
HRESULT.Check(Render());
d3dimg.AddDirtyRect(new Int32Rect(0, 0, d3dimg.PixelWidth, d3dimg.PixelHeight));
d3dimg.Unlock();

Comentarios

Llame al AddDirtyRect método para indicar los cambios realizados en el búfer de reserva del código. Para representarse, el área modificada en el búfer de reserva debe tener un área modificada correspondiente en .D3DImage

Llame a los SetBackBuffer métodos y Lock antes de llamar al AddDirtyRect método .

Llame al Unlock método para copiar las áreas modificadas en el búfer frontal.

Nota

Después de algunas llamadas al AddDirtyRect método , las áreas modificadas se combinan en un solo área. Esto significa que debe tener datos válidos fuera de las áreas modificadas.

Se aplica a

Consulte también