【解決方法】coloritor クラスの colorui クラスをオーバーライドして、カスタム カラーの新しいタブを追加するにはどうすればよいですか?

プログラミングQA


私がやろうとしていることは カスタム カラーのカスタム タブを追加するカラーUI classカラーエディター class に現れる プロパティ グリッド コントロールの。

何かのようなもの これ ( フォトショップで作ったただのフェイク画像 )。

私が試したこと:

何らかの方法で自分自身を作成する必要があることを理解しています カラーエディター class を上書きし、 カラーUI class 元の中にネストされています カラーエディター class しかし、どのメソッドをオーバーライドする必要があるのか​​ わからないので、このエクストラを追加するには Tab

何か案が?

ありがとうございました!!!

解決策 3

既存の ColorEditor クラスを拡張するカスタム カラー エディター クラスを作成したいようです。 カスタム カラーの新しいタブを追加するには、元の ColorEditor クラス内にネストされている ColorUI クラスをオーバーライドする必要があります。

これを行うには、ColorEditor クラスを拡張し、ColorUI クラスをオーバーライドする新しいクラスを作成できます。 これを行う方法の例を次に示します。

public class CustomColorEditor : ColorEditor
{
    protected override void ColorUI(Color value)
    {
        // Add your custom tab with custom colors here
    }
}

カスタム カラー エディター クラスを作成したら、PropertyGrid コントロールの PropertyEditor プロパティをカスタム カラー エディター クラスに設定することにより、WinForms アプリケーションで使用できます。

これを行う方法の例を次に示します。

// Create a new instance of your custom color editor class
CustomColorEditor customColorEditor = new CustomColorEditor();

// Set the PropertyEditor property of your PropertyGrid control to your custom color editor
propertyGrid.PropertyEditor = customColorEditor;

これが役立つことを願っています!

解決策 1

見る ColorDialog クラス (System.Windows.Forms) | マイクロソフト ラーン[^] このダイアログのカスタマイズについては、

解決策 2

多分あなたは微調整することができます C# .NET の ColorDialog.cs ソース コード[^]

またはこれを使用します: GitHub – TinyPicker: C# で書かれた小さなカラー ピッカー ユーティリティ[^]

Visual Studio 拡張機能を作成する場合は、以下をご覧ください。
Visual Studio IDE の統合カラー ピッカー – VSPackage (アドイン)[^]

コメント

タイトルとURLをコピーしました