Question

Quelle est la procédure de désactivation de l'accélération matérielle dans WPF? C'est quoi exactement? Est-ce un paramètre fenêtres, un studio visuel ou quelque chose que vous modifier dans le code de votre projet WPF? Est-ce que cela affectera uniquement le programme que vous utilisez ou le sera par l'ensemble du système?

Était-ce utile?

La solution

C'est un grand réglage du système, à partir du bureau, clic droit pour afficher un menu contextuel, cliquez sur les propriétés, et regardez autour de là-bas pour les paramètres vidéo pour désactiver l'accélération matérielle ou qu'il peut y avoir une icône de la barre système pour les paramètres graphiques. Ce système est large et non local.

Hope this helps, Meilleures salutations, Tom.

Autres conseils

Vous pouvez le désactiver sur un départ de niveau Window de .Net 3.5 SP1.

public partial class MyWindow : Window
{
    public MyWindow()
        : base()
    {
        InitializeComponent();
    }

    protected override void OnSourceInitialized(EventArgs e)
    {
        var hwndSource = PresentationSource.FromVisual(this) as HwndSource;

        if (hwndSource != null)
            hwndSource.CompositionTarget.RenderMode = RenderMode.SoftwareOnly;

        base.OnSourceInitialized(e);
    }
}

ou vous pouvez vous abonner à SourceInitialized cas de la fenêtre et faire la même chose.

Vous pouvez aussi placèrent au niveau processus :

RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly;

L'ordre de priorité pour le rendu logiciel est:

  1. clé de Registre DisableHWAcceleration
  2. ProcessRenderMode
  3. RenderMode (per-cible)

Il est un paramètre de registre machine large. Voir rendu graphique du Registre des paramètres dans la documentation WPF pour la clé de registre et d'autres détails relatifs à la personnalisation rendu WPF.

La clé indiquée est: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics\DisableHWAcceleration

Le document MSDN est « non disponible » pour 4,5 .NET, donc cela peut être une option PÉRIMÉ qui ne fonctionne que dans 4.0 ou ci-dessous.

Dans la version 4.0, vous pouvez également utiliser RenderOptions.ProcessRenderMode pour définir un processus large préférence ( http://msdn.microsoft.com/en-us/library/system.windows.media.renderoptions.processrendermode.aspx ).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top