Freigeben über


D3DImage.Lock Methode

Definition

Sperrt das D3DImage und aktiviert Vorgänge im Hintergrundpuffer.

public:
 void Lock();
public void Lock ();
member this.Lock : unit -> unit
Public Sub Lock ()

Ausnahmen

Die Sperranzahl entspricht UInt32.MaxValue.

Beispiele

Das folgende Codebeispiel zeigt, wie Sie die Lock -Methode aufrufen, um Updates für den Backpuffer zu aktivieren. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Hosting von Direct3D9-Inhalten in 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();

Hinweise

Rufen Sie die Lock -Methode auf, um den Backpuffer zu ändern, indem Sie die AddDirtyRect Methoden und SetBackBuffer aufrufen. Während der D3DImage gesperrt ist, kann Ihre Anwendung auch auf die Direct3D-Oberfläche rendern, die dem Backpuffer zugewiesen ist.

Hinweis

Die Lock -Methode blockiert, wenn das Renderingsystem den Backpuffer liest, um den Frontpuffer zu aktualisieren. Verwenden Sie die TryLock -Methode, um eine unbegrenzte Blockierung zu vermeiden.

Gilt für:

Weitere Informationen