title: Outlook VSTO with new Office High DPI support
body: <p>We have an Office VSTO add-in for Outlook written in C# and using Windows Forms.</p>
  
  <p>Before a recent Office update, the add-in was rendering just fine. But after Microsoft introduced <a href="https://support.office.com/en-us/article/office-support-for-high-definition-displays-6720ca0e-be59-41f6-b629-1369f549279d" rel="noreferrer">Office support for high definition displays</a>, many forms started to render blank in Outlook 2016 (MSO / Office 365).</p>
  
  <p>I can fix this inside Outlook by selecting "Optimize for compatibility" in Display Settings on the bottom status bar in Outlook:
  <a href="https://i.stack.imgur.com/5NR3I.png" rel="noreferrer"><img src="https://i.stack.imgur.com/5NR3I.png" alt="Display Settings popup"></a></p>
  
  <p>But this is not a tenable solution for our customers, if every user has to do this manually. So I have two questions:</p>
  
  <ol>
  <li>Where in the Windows Registry is this setting located and what value am I required to write to activate "Optimize for compatibility" mode?</li>
  <li>How can I make my WinForms add-in work with the new "Optimize for best appearance" mode?</li>
  </ol>
  
  <h2>Update</h2>
  
  <p>I have discovered that disabling transitions fixed the problem in one form where the controls started appearing after removing transitions. But our most important form still renders blank even after removing all transitions.</p>
  
  <p>I also tried to upgrade the project to .NET 4.7 and enable the new <a href="https://docs.microsoft.com/en-us/dotnet/framework/winforms/high-dpi-support-in-windows-forms" rel="noreferrer">high DPI support</a> for Windows Forms. But that also did not solve the problem.</p>