D3DImage.AddDirtyRect(Int32Rect) 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 geeft u het gebied van de backbuffer die is gewijzigd.
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)
Parameters
- Kenmerken
Uitzonderingen
De bitmap is niet vergrendeld door een aanroep naar de Lock() of TryLock(Duration) methoden.
– of –
De backbuffer is niet toegewezen door een aanroep naar de SetBackBuffer(D3DResourceType, IntPtr) methode.
Aan een of meer van de volgende voorwaarden is voldaan.
dirtyRect.X
< 0
dirtyRect.Y
< 0
dirtyRect.Width
<0 of dirtyRect.Width>PixelWidthdirtyRect.Height< 0 ofdirtyRect.Height>PixelHeight
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u de AddDirtyRect methode aanroept om de gewijzigde regio in de backbuffer op te geven. 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 AddDirtyRect methode aan om aan te geven welke wijzigingen uw code heeft aangebracht in de backbuffer. Om te worden weergegeven, moet het gewijzigde gebied op de achterbuffer een overeenkomend gewijzigd gebied hebben op de D3DImage.
Roep de SetBackBuffer en Lock methoden aan voordat u de AddDirtyRect methode aanroept.
Roep de Unlock methode aan om de gewijzigde gebieden naar de frontbuffer te kopiëren.
Note
Na enkele aanroepen naar de AddDirtyRect methode worden de gewijzigde gebieden samengevoegd in één gebied. Dit betekent dat u geldige gegevens buiten de gewijzigde gebieden moet hebben.