2011-01-11 25 views
10

Visual Studio DesignerでControlをダブルクリックすると、自動的に一部のeventが登録され、コードビハインドファイルにイベントハンドラが生成されます。ロード Visual Studioデザイナでコントロールのダブルクリックイベントを指定する

  • Button - -

    ダブルクリックし、次のコントロールには、対応するイベントに

    • UserControl加入しをクリック
    • TextBox - ノーから
    • GridをTextChanged偶数これが指定されているどのようにトン
      など

    、それは、Visual Studioの設定ですか?これを無効にすることができます。また、どのイベントをDouble-Clickにリンクするかを指定するにはどうすればいいですか?カスタムコントロール?

    おかげ

  • 答えて

    13

    指定することができます制御DefaultEventAttributeがあります。設計者はこの属性を読み取って、その属性を使用してデフォルトとして使用するイベントを決定します。

    [DefaultEvent("DoubleClick")] 
    public class MyClass { 
    
        public event EventHandler DoubleClick; 
    
    } 
    

    また、あまり有用でないDefaultPropertyAttributeもあります。デザイナでコントロールを選択したときに、プロパティグリッドで選択する既定のプロパティ名を決定するだけです。

    +0

    最終的なユーザーがコントロールにDoubleClickして機能にアクセスするようにするには、「クリック」ではなく「DoubleClick」を使用してください –

    +0

    ありがとうございました!私はReflectorを使って 'TextBox'を見るときにこれを見ませんでしたが、' ContentProperty( "Text") 'などしか見ていませんでした。とにかく、DefaultPropertyAttributeのために余分なものが2つあります:) –

    関連する問題