DOBON.NETプログラミング道掲示板
(現在 過去ログ2 を表示中)

[ 最新記事及び返信フォームをトピックトップへ ]

■33626 / inTopicNo.1)  プロパティウィンドウのカスタマイズ
  
□投稿者/ masa 一般人(1回)-(2017/05/21(Sun) 16:23:05)
  • アイコン環境/言語:[C#] 
    分類:[.NET] 

    こんにちは。
    C#にてWindowsフォームアプリケーション開発を行っております。

    デザインモードのプロパティウィンドウにて、Colorのプロパティを変更する際に
    カスタム、Web、システムのタブが出現し、色を選択することができますが、
    タブを追加して、複数の指定した色の一覧を表示し、
    その中から色を選択できるようにすることは可能でしょうか?

    どなたかご存知の方がいらっしゃいましたらご回答いただけると幸いです。
    よろしくお願い致します。
引用返信 削除キー/
■33628 / inTopicNo.2)  Re[1]: プロパティウィンドウのカスタマイズ
□投稿者/ 魔界の仮面弁士 大御所(1070回)-(2017/05/22(Mon) 10:04:47)
  • アイコンNo33626に返信(masaさんの記事)
    > デザインモードのプロパティウィンドウにて、Colorのプロパティを変更する際に
    > カスタム、Web、システムのタブが出現し、色を選択することができますが、
    > タブを追加して、複数の指定した色の一覧を表示し、
    > その中から色を選択できるようにすることは可能でしょうか?

    自作 UserControl の「Color 型を返すプロパティ」を拡張する場合は、

    (1) System.Drawing.Design.DLL を参照設定する。

    (2) System.Drawing.Design.ColorEditor クラスもしくは
      System.Drawing.Design.UITypeEditor クラスを継承して
      第 2 引数 IServiceProvider provider の DropDownControl メソッドで
      カスタマイズした色選択タブを返すようにする

    (3) 2 で作成したエディタークラスを、
      自作コントロールの Color 系プロパティに、EditorAttribute で割り当てる。
    [Editor(typeof(自作ColorEditor), typeof(System.Drawing.Design.UITypeEditor))]
    public override Color ShadowColor { … }


    という手順になると思います。


    なお上記 (3) は、「自作クラスの Color 型を返すプロパティ」を拡張する
    方法ですが、もしもそれを 「既存のクラスの Color 型を返すプロパティ」を
    拡張する方法に差し替えたいのであれば、この部分を中継するために
    IExtenderProvider インターフェイスと ProvidePropertyAttribute を
    用いた拡張プロバイダークラスを用意してみては如何でしょう。


    以下、参考情報として

    https://msdn.microsoft.com/ja-jp/library/aa302326.aspx
    [.NET Framework の PropertyGrid コントロールの高度な活用]


    https://www.codeproject.com/Articles/14823/ColorEditorEx
    [ColorEditorEx - An extension to the ColorEditor to support translucent colors]


    https://msdn.microsoft.com/magazine/msdn-magazine-issues
    [MSDN Magazine July 2003]-[Features]-[GDI+: A Primer on Building a Color Picker User Control with GDI+ in Visual Basic .NET or C#]


    https://msdn.microsoft.com/ja-jp/library/d6c1xa43%28vs.120%29.aspx
    [方法 : 拡張プロバイダーを実装する]

引用返信 削除キー/
■33629 / inTopicNo.3)  Re[2]: プロパティウィンドウのカスタマイズ
□投稿者/ masa 一般人(2回)-(2017/05/28(Sun) 23:49:14)
  • アイコン魔界の仮面弁士さん、早速のご回答ありがとうございます。

    No33628に返信(魔界の仮面弁士さんの記事)
    > 自作 UserControl の「Color 型を返すプロパティ」を拡張する場合

    まさに私が求めていた情報でした。
    詳しい情報を教えてくださり、ありがとうございました。
解決み!
引用返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/


- Child Tree -