CEにてビジュアル継承が無効になる

CEの開発をVS2005で行っている際に、ビジュアル継承が無効になるとかなんとか。解決策を調べていたところ、

OBReadLibNet.dll内でプラットフォーム呼び出し(P/Invoke)を使用しているため、ビジュアル継承が無効となっています。OBReadLibNet.dllはデザイン時にプラットフォーム呼び出しを行いません。
継承したフォーム上にコントロールを表示させるには、親フォームのデザイン時属性ファイル(DesignTimeAttributes1.xmta)にDesktopCompatible属性を”true”と追加設定し、ビジュアル継承を有効にしてください。

という記載があったが、デザイン時属性ファイルってなに?という状態。どうもプロジェクトの「新しい項目の追加」からデザイン時の属性ファイルを指定する事でテンプレートから追加できた。具体的な記載方法は下記。

<?xml version="1.0" encoding="utf-16"?>
<Classes xmlns="http://schemas.microsoft.com/VisualStudio/2004/03/SmartDevices/XMTA.xsd">
  <Class Name="TestProject.FrmTest">
    <DesktopCompatible>true</DesktopCompatible>
  </Class>
</Classes>

CEにてビジュアル継承が無効になる への1件のコメント

  1. 通りがかりにコメントさせて頂きます

    ここはアセンブリ名.(基本)フォーム名
    になります
    例の場合は
    アセンブリ名(≒プロジェクト名・slnのファイル名):TestProject
    基本フォーム名:FrmTest(FrmTest.vb)
    だと思われます

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です