Visual Basicでビルド時に警告 BC40026が発生する現象の対処方法

文書番号 : 40463     文書種別 : 技術情報     登録日 : 2017/07/26     最終更新日 : 2017/07/26
文書を印刷する
対象製品
MultiRow for Windows Forms 10.0J
詳細
既存のVisual BasicのプロジェクトにMultiRow for Windows Forms 10.0Jを組み込んだとき、ビルド時に次のエラーメッセージ(警告)が表示される場合があります。

  • warning BC40026: 'Template1' は、CLS に準拠していない 'Template' から派生しているため、CLS に準拠していません。

これは、Visual Studio .NET 2002または2003で作成された Visual Basicのプロジェクトに次のコードが存在することが原因です。

AssemblyInfo.vbファイル
<Assembly: CLSCompliant(True)>


このコードは、Visual Studio 2010、2012または2013で新規にVisual Basicプロジェクトを作成した場合には生成されません。また、C#のプロジェクトでも生成されません。
Visual Studio .NET 2003ではこの属性が設定されていても警告は表示されませんが、Visual Studio 2010、2012または2013では警告が表示されます。
(注:MultiRow for Windows Forms 10.0JはVisual Studio .NET 2003、2010に対応していないため、他の製品での検証によるものです)

この警告を回避するには、CLSCompliant属性をコメントアウトするかまたは<CLSCompliant(False)>を設定してください。
この警告の詳細はMSDNの次のトピックを参照してください。

Visual Basic リファレンス : エラー メッセージ
'<classname>' は、CLS に準拠していない '<baseclassname>' から派生しているため、CLS に準拠していません。
http://msdn.microsoft.com/ja-jp/library/dy4zaya3.aspx