3

ここでVisualStudioで発生するのと同様に、ノードの横に表示されるC#を使用してコンテキストメニューを作成したいと思います。

私が持っているコードにより、メインフォームがちらつきます。

private void treeView1_MouseDown(object sender, MouseEventArgs e)
{
    if (e.Button == MouseButtons.Right)
    {
        var myForm = new Form {Text = "My Form"};
        myForm.SetBounds(10, 10, 200, 200);

        myForm.Show();
        // Determine if the form is modal.
        if (myForm.Modal == false)
        {
            // Change borderstyle and make it not a top level window.
            myForm.FormBorderStyle = FormBorderStyle.FixedToolWindow;
            myForm.TopLevel = false;
        }
    }            
}
4

3 に答える 3

21

単純に使ってみませんForm.ShowDialogか?

MSDNから:

Form.ShowDialogメソッド

フォームをモーダルダイアログボックスとして表示します。

于 2012-05-30T18:15:11.427 に答える
1

treeView1.ContextMenuあなたが取っているアプローチの代わりに設定する必要があります。

于 2012-05-30T18:25:10.190 に答える
0

ContextMenuあなたはc#の制御を読んで試してみるべきです。私はそれがあなたが使用した技術よりもあなたの問題を解決すると思います.....または使用以外のmyform.showdialog();方法でsetbounds()

于 2012-05-30T18:57:13.920 に答える