Verwenden eines Gerätekontexts ohne Clippingbereichsanpassung
Wenn Sie System.EventArgs, dass das Steuerelement nicht außerhalb des Clientrechtecks zeichnet, können Sie einen kleinen jedoch auffindbaren Geschwindigkeitsgewinn erkennen, indem Sie den Aufruf IntersectClipRect deaktivieren, der durch COleControl ausgeführt werden. Hierzu, entfernen Sie das Flag clipPaintDC aus dem Satz von Flags, die von COleControl::GetControlFlags zurückgegeben werden. Beispiel:
DWORD CMyAxOptCtrl::GetControlFlags()
{
DWORD dwFlags = COleControl::GetControlFlags();
...
dwFlags &= ~clipPaintDC;
...
return dwFlags;
}
Der Code, mit dem dieses Flags entfernen wird automatisch generiert, wenn Sie die Option Nicht-geschnittener Gerätekontext auf der Seite Steuerelementeinstellungen auswählen, wenn das Steuerelement mit dem MFC-ActiveX-Steuerelement-Assistenten erstellt wird.
Wenn Sie fensterlose Aktivierung verwenden, verfügt diese Optimierung keine Auswirkungen.