-1

私は C# を初めて使用し、アプリケーションをコンパイルしようとしていますが、次のエラー メッセージが表示されます。

メソッド 'Select' のオーバーロードは 1 つの引数を取りません。

ここに私が直面しているコードの一部があります:

    #region Tree events
    private void treeDims_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
    {
        if ((System.Windows.Forms.Control.ModifierKeys & Keys.Control) == Keys.Control)
        {// handle CTRL + A
            if (e.KeyValue == (int)System.Windows.Forms.Keys.A)
            {
                e.Handled = true;
                foreach (CDNM.Controls.Node n in this.treeDims.Nodes)
                {
                    n.Select(false);
                }
            }
        }
    }

    private void treeCubes_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
    {
        if ((System.Windows.Forms.Control.ModifierKeys & Keys.Control) == Keys.Control)
        {// handle CTRL + A
            if (e.KeyValue == (int)System.Windows.Forms.Keys.A)
            {
                e.Handled = true;
                foreach (CDNM.Controls.Node n in this.treeCubes.Nodes)
                {
                    n.Select(false);
                }
            }
        }
    }

VS2010 は でエラーを強調表示しますn.Select(false)

これは基本的なことであることはわかっていますが、私は初心者なので、修正方法がわかりません。

4

3 に答える 3

2

使用しているコントロールの選択メソッドはブール値パラメーターを受け入れず、代わりに問題のノードを単に選択させる命令メソッドであると想定しています。あなたがやろうとしているのは、状態を「選択済み」から「未選択」に変更することです。

私はあなたが使用しているコントロール ライブラリを使用していませんが、パラメーターのないメソッドとブール プロパティの getter/setterSystem.Web.UI.WebControls.Treenodeを持つ、コントロールに似たブール プロパティの設定があることは間違いありません。 TreeNode.Select()TreeNode.Select

これを試して:

foreach (CDNM.Controls.Node n in this.treeDims.Nodes)
{
    n.Selected = false;
}

もちろん、私は間違っている可能性があります。. .

于 2013-01-02T01:25:26.737 に答える
0

使用しているコントロールを認識できませんが、この種の問題を解決するには 3 つの基本的な方法があります。

  1. コード内の Select をダブルクリックし、F1 を押します。コントロール ベンダーが適切に作業を行っている場合は、そのメソッドのヘルプ情報が表示されます。

  2. [選択] を右クリックし、ポップアップ メニューから [定義へ移動] を選択します。これにより、利用可能なオーバーロードのリストが表示されます。そうでない場合は、ノードを右クリックして同じことを行います。これにより、Node.js で使用できるプロパティとメソッドのリストが表示されます。

  3. ベンダーのドキュメントを参照します。このコントロールが社内で作成され、ヘルプ ドキュメントがない場合は、コントロールを担当するチームに相談してください。

于 2013-01-02T00:58:27.660 に答える
0

これは、コードのどこかにメソッド呼び出しまたはコンストラクターがあり、必要でないパラメーターがあるか、必要なパラメーターが欠落していることを意味します。

注: このコード ブロックは、「C# の初心者」にとっては少し複雑に思えます。

于 2013-01-02T00:59:44.267 に答える