1

デザイナーを使用して列を追加すると、コントロールがクラッシュし、次のメッセージが表示されます。

System.Exception: The control BrightIdeasSoftware.ObjectListView has thrown an unhandled exception in the designer and has been disabled.  
Exception: Unable to cast object of type 'System.Windows.Forms.ColumnHeader' to type 'BrightIdeaSoftware.OLVColumn'

私は2つの異なるラップトップを試しました。両方のマシンで、VS2010 では問題なく動作しますが、#D でデザイナーがクラッシュします。

次に、LinuxボックスでVirtualBoxを使用してwindows7、.net4、sdk、およびOLVを新規インストールし、同じ結果を得ました。

Google で有用な情報が見つからないため、お役に立てば幸いです。

4

3 に答える 3

0

バグです。SharpDevelop は、ObjectListView アセンブリに含まれるカスタム列コレクション エディターを使用していません。代わりに、標準の System.Windows.Forms.ListView に使用される列コレクション エディターにデフォルト設定されています。

于 2012-01-21T18:06:55.587 に答える
0

私はC#で同じ問題を抱えていました。私は SharpDevelop 4.3.3 と c# 4 を使用しています。次の手順に従って解決しました。

  • フォームにオブジェクト リスト ビュー (つまり、objectListView1) を追加します。
  • olvColumns (つまり、olvColumn1、olvColumn2 など...) をフォームに直接追加します... 列エディターを使用しません。
  • フォームのInitializeComponentメソッド (フォームのコンストラクターで呼び出される) で、olvColumns の初期化後、コードの後に​​オブジェクト リスト ビューと列の間のリンクを追加します。
    [...]
    ///
    // olvColumn4
    ///
    this.olvColumn4.CellPadding = null;

    // olvColumns の初期化後

    objectListView1.Columns.Add(olvColumn1);
    objectListView1.Columns.Add(olvColumn2);
    objectListView1.Columns.Add(olvColumn3);
    objectListView1.Columns.Add(olvColumn4);

    [...]

この操作の後、デザイン モードでフォームを再度開き、objectlistview 列を確認できます。作成した列があることがわかります。

于 2013-10-28T22:02:05.743 に答える