title: Natvis with multiple base classes
body: <p>I'm working in a framework that does a lot of inheritance, and I've found that Natvis for one base class will interfere with that for another.</p>
  
  <p>Here's a dumb example:</p>
  
  <pre><code>class MainBase {};
  class ExtraBase {};
  class Derived: MainBase, ExtraBase {};
  </code></pre>
  
  <p>With this natvis:</p>
  
  <pre><code>&lt;Type Name="MainBase"&gt;
    &lt;Expand&gt;
      &lt;Item Name="MainBaseItem"&gt;23&lt;/Item&gt;
    &lt;/Expand&gt;
  &lt;/Type&gt;
  
  &lt;Type Name="ExtraBase"&gt;
    &lt;Expand&gt;
      &lt;Item Name="ExtraBaseItem"&gt;42&lt;/Item&gt;
    &lt;/Expand&gt;
  &lt;/Type&gt;
  </code></pre>
  
  <p>...I get this:
  <a href="https://i.stack.imgur.com/0dMNu.png" rel="nofollow noreferrer">https://i.stack.imgur.com/0dMNu.png</a></p>
  
  <p><a href="https://i.stack.imgur.com/UyFCx.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/UyFCx.png" alt="enter image description here"></a></p>
  
  <p>The expansion for MainBaseItem has shown up fine, but the one for ExtraBaseItem is nowhere to be seen.</p>
  
  <p>In my real-world case, the natvis for the MainBase equivalent is very important, so I can't solve the problem by adding <strong>Inheritable="false"</strong> to it. It's also not practical to add specialised natvis for the derived class itself - there are thousands of derived classes. Given these unhelpful constraints, is there anything I can do to make ExtraBaseItem show up?</p>