D3DImage.Lock Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee vergrendelt u de D3DImage en schakelt u bewerkingen in de backbuffer in.
public:
void Lock();
public void Lock();
member this.Lock : unit -> unit
Public Sub Lock ()
Uitzonderingen
Het aantal vergrendelingen is gelijk aan UInt32.MaxValue.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u de Lock methode aanroept om updates voor de backbuffer in te schakelen. Zie Walkthrough: Direct3D9-inhoud hosten in WPF voor meer informatie.
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();
Opmerkingen
Roep de Lock methode aan om de backbuffer te wijzigen door de AddDirtyRect en SetBackBuffer methoden aan te roepen. Terwijl de D3DImage toepassing is vergrendeld, kan uw toepassing ook worden weergegeven op het Direct3D-oppervlak dat is toegewezen aan de backbuffer.
Note
De Lock methode blokkeert wanneer het renderingsysteem de achterbuffer leest om de frontbuffer bij te werken. Gebruik de TryLock methode om blokkeren voor onbepaalde tijd te voorkomen.