チャートコントロールのバッドノウハウ

VisualStudio2012 で、.NET Framework 3.5をターゲットにして、Windowsフォームにチャートコントロールを貼るのには工夫が必要になる。



かなり限定された条件になるが
  • プロジェクトの対象フレームワークは.NETframework3.5
  • VisualStudio2012 Update 4
  • Microsoft Chart Controls for Microsoft .NET Framework 3.5 をセットアップしている
という環境で、フォームにチャートコントロールを貼って保存して閉じて、もう一度開くと、エラー!となる。つまり、せっかく作ったチャートソフトのプロジェクトを開くことができなくなってしまうのだ。

これを回避するには、

  1. クラスライブラリを作ってユーザーコントロールにチャートを貼り付ける。
  2. 1のプロジェクトをビルドしてDLLを作る。
  3. 別にフォームプロジェクトを作って、上のDLLを参照してチャートコントロールが貼り付けてあるユーザーコントロールをフォームに張る

という感じでDLLを経由して使うという手がある。

そもそもvs2012では.NET Framework 4.0をターゲットにすればこんな問題は起きないのだが、いろいろ事情があってそうもいかないときは、これで回避する。



あとvs2010ではエラーにはならない。vs2012を使うのを諦めるのも一つの手。



コメント

このブログの人気の投稿

varchar をデータ型 numeric に変換中に、算術オーバーフロー エラーが発生しました。