D3DImage.Unlock Metoda

Definicja

Dekrementuje liczbę blokad dla .D3DImage

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

Przykłady

W poniższym przykładzie kodu pokazano, jak wywołać metodę Unlock , aby skopiować zaktualizowany bufor wsteczny do buforu frontu. Aby uzyskać więcej informacji, zobacz Przewodnik: hostowanie zawartości Direct3D9 w 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();

Uwagi

Gdy licznik blokady D3DImage osiągnie zero, element D3DImage jest w pełni odblokowany. Element D3DImage jest oznaczony do renderowania, jeśli obraz zmienił obszary, które zostały określone przez poprzednie wywołania AddDirtyRect metody .

Po zatwierdzeniu i renderowaniu zmian dodatkowe wywołania Lock bloku metody do momentu skopiowania zawartości buforu wstecznego do buforu frontu. Ta synchronizacja pozwala uniknąć wyświetlania artefaktów, takich jak rozdzieranie.

Uwaga

Nie aktualizuj powierzchni Direct3D podczas D3DImage odblokowywania.

Dotyczy

Zobacz też