1

2 つのボタンを含む Visual Studio 用のアドインを作成します。ユーザーがそれらのいずれかを押すと、このボタンが無効になり、別のボタンが有効になります。どうすればできますか?

ボタンはコマンド タイプ (commands.AddNamedCommand2...) です。

ありがとうございます!

4

5 に答える 5

1

あなたはこれを試すことができます:

private void button1_Click(object sender, EventArgs e)
    {
        this.button1.Enabled = false;
        this.button2.Enabled = true;
    }

    private void button2_Click(object sender, EventArgs e)
    {
        this.button2.Enabled = false;
        this.button1.Enabled = true;
    }  

これがお役に立てば幸いです。

于 2012-07-31T10:01:57.220 に答える
1
void Btn1_Click(Object sender, EventArgs e)
{
   Btn2.Enabled = false;
}

void Btn2_Click(Object sender, EventArgs e)
{
   Btn1.Enabled = false;
}
于 2012-07-31T09:51:27.813 に答える
0

アドインの最近の状態でボタンを有効にする必要があるかどうかを表す状態変数をボタンに関連付けることができます。アドインが初期化されるとき、必要に応じて状態を設定する必要があります。クエリでは、アドインの最近の状態を確認し、ボタンを適切な有効/サポートされていない状態に設定できます。

状態QueryStatusは、インターフェイスのメソッドを介して変更できIDTCommandTargetます (アドインが読み込まれている場合)。

デフォルトのテンプレートの実装:

public void QueryStatus(string commandName, vsCommandStatusTextWanted neededText, ref vsCommandStatus status, ref object commandText)
{
    if(neededText == vsCommandStatusTextWanted.vsCommandStatusTextWantedNone)
    {
        if(commandName == "YourAddin.Connect.YourAddinCommandName")
        {
            status = (vsCommandStatus)vsCommandStatus.vsCommandStatusSupported|vsCommandStatus.vsCommandStatusEnabled;
            return;
        }
    }
}

ステータスをvsCommandStatus.vsCommandStatusUnsupported

于 2013-12-22T18:09:25.803 に答える
-1
// Remove event handler
this.button_Ping.Click -= new System.EventHandler(this.button_Ping_Click);

Some action...

// Add event handler
this.button_Ping.Click += new System.EventHandler(this.button_Ping_Click);
于 2012-08-09T11:58:32.907 に答える