none
プロパティウインドウのようなダイアログを作りたい RRS feed

  • 質問

  • Visual Studio 2005 のプロパティウインドウは左側に項目が表示され、右側にその内容が表示されていますが、項目を選択すると、右側がComboBoxのようになって選択出来るようになります。
    このようなダイアログを作りたいのですが、何か参考になるような資料はないでしょうか。

     

    2007年9月26日 4:51

すべての返信

  •  兼田 さんからの引用

    このようなダイアログを作りたいのですが、何か参考になるような資料はないでしょうか。

     

    ダイアログというのは何を指しているのかが分かりません。

     

     

    プロパティウィンドウのような物を作成したいのでしたら以下のサイトを参考にしてみては如何でしょうか?

    @IT:_NET TIPS PropertyGridコントロールのプロパティ変更時に処理を行うには? - C# VB_NET Windowsフォーム

     

     

    2007年9月26日 9:05
  • ご教授ありがとうございます。
    確かに、PropertyGridコントロールを使えばプロパティウインドウと同じ物が出来そうです。
    しかし、表示するプロパティの項目や各プロパティの候補値をアプリケーションの実行時に動的に変更することは難しそうです。
    単純に、ListViewの中にComboBoxが出て来て、自由に値を選択出来るような物が作りたいのですが、PropertyGridコントロールでは難しそうです。

     

    2007年9月27日 1:51
  •  兼田 さんからの引用

    単純に、ListViewの中にComboBoxが出て来て、自由に値を選択出来るような物が作りたいのですが、PropertyGridコントロールでは難しそうです。

     

    自作するほうが大変な気がします。

     

    試しサンプルを作ってみました。

    画面は以下の用に配置してます。

     

    ┏━━━━━━━━━━━━━━━┓
    ┃Form1             ┃
    ┃┌────┐┌───────┐┃
    ┃│button1 ││propertyGrid1 │┃
    ┃└────┘│       │┃
    ┃      │       │┃
    ┃      │       │┃
    ┃      │       │┃
    ┃      │       │┃
    ┃      │       │┃
    ┃      │       │┃
    ┃      │       │┃
    ┃      │       │┃
    ┃      └───────┘┃
    ┗━━━━━━━━━━━━━━━┛

     

    Form1のコンストラクタに以下のようにコードを変更しました。

    コード ブロック

    public Form1()
    {
        InitializeComponent();

        this.Load
            += new EventHandler(
                delegate(object sender, EventArgs e)
                {
                    this.propertyGrid1.SelectedObject = this.button1;
                });
    }

     

     

    上記のサンプルを実行してみたところ、動的にボタンのプロパティを変更できました。

    確認はしていませんが、VisualStudio.NETのプロパティウィンドウと全く同じようにButtonのプロパティを変更できました。

     

    そういうものを望んでいるのかと思っているのですが、これとはまた別物ということなんでしょうか?

     

    2007年9月27日 4:12
  • どのようなものを作りたいのかよく分かりませんが、

    プロパティウィンドウの形状ではなく、ListViewにコンボボックスがついたようなものが欲しいのであれば

    DataGridViewにコンボボックスを組み合わせてはいかがでしょう。

    http://dobon.net/vb/dotnet/datagridview/datagridviewcomboboxcolumn.html

    2007年9月27日 12:40
  •  C.John さんからの引用

    DataGridViewにコンボボックスを組み合わせてはいかがでしょう。

    http://dobon.net/vb/dotnet/datagridview/datagridviewcomboboxcolumn.html

     

    ありがとうございます。

    作りたかったのは当にこれです。

    2007年10月1日 7:24