D3DImage.IsFrontBufferAvailable Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient une valeur qui indique si un tampon d'affichage existe.
public:
property bool IsFrontBufferAvailable { bool get(); };
public bool IsFrontBufferAvailable { get; }
member this.IsFrontBufferAvailable : bool
Public ReadOnly Property IsFrontBufferAvailable As Boolean
Valeur de propriété
true
si un tampon d'affichage existe ; sinon, false
.
Exemples
L’exemple de code suivant montre comment case activée la propriété lors du IsFrontBufferAvailable rendu de la cible de composition. Pour plus d’informations, consultez Procédure pas à pas : hébergement de contenu Direct3D9 dans WPF.
void CompositionTarget_Rendering(object sender, EventArgs e)
{
RenderingEventArgs args = (RenderingEventArgs)e;
// It's possible for Rendering to call back twice in the same frame
// so only render when we haven't already rendered in this frame.
if (d3dimg.IsFrontBufferAvailable && _lastRender != args.RenderingTime)
{
IntPtr pSurface = IntPtr.Zero;
HRESULT.Check(GetBackBufferNoRef(out pSurface));
if (pSurface != IntPtr.Zero)
{
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();
_lastRender = args.RenderingTime;
}
}
}
Remarques
Parfois, la mémoire tampon avant devient indisponible. Ce manque de disponibilité peut être dû au verrouillage d’écran, aux applications Direct3D en plein écran exclusives, au changement d’utilisateur ou à d’autres activités système. Dans ce cas, votre application WPF est avertie en gérant l’événement IsFrontBufferAvailableChanged . La façon dont votre application répond à l’indisponibilité de la mémoire tampon frontale dépend de l’activation ou non de WPF pour revenir au rendu logiciel. La SetBackBuffer méthode a une surcharge qui prend un paramètre qui spécifie si WPF revient au rendu logiciel. Pour plus d’informations, consultez les remarques de la D3DImage classe .
Informations sur les propriétés de dépendance
Champ Identificateur | IsFrontBufferAvailableProperty |
Propriétés de métadonnées définies sur true |
Aucun |