Toolstrip WinForms .Net Core 的问题

ter*_*zer 4 c# click toolstrip winforms .net-core

我正在 .Net Core 中制作一个 Winforms 应用程序来学习一些基本的东西。这是一个简单的应用程序,我将一些文本从文本框写入文件(基本上像记事本)。

现在我想添加一个带有工具条按钮的工具条来创建新文件和一个工具条按钮来将文本保存到文件等。

因此,我从工具箱添加工具条并将其拖到我的 form1.cs[design] 中。然后我右键单击工具条并单击“插入标准项目”。这些按钮正在添加到工具条中。

现在我的问题是我想向按钮添加单击事件,但我无法单独双击工具条按钮。所以我必须进入designer.cs添加点击事件。例如:

this.newToolStripButton.Click += new System.EventHandler(this.btnNewFile_Click);
Run Code Online (Sandbox Code Playgroud)

我刚刚在 .Net Framework 中使用 WinForms 应用程序进行了尝试,只需双击工具条按钮即可添加事件处理程序。

我是否必须在 .Net Core 中采取不同的方法?.Net Core 是否尚未完全支持这一点,我应该只使用 .Net Framework for Winforms 吗?我读到,并非 .Net Framework 中 Winforms 的所有功能都在 .Net Core 中受支持,但 Toolstrip 应该可以工作。

提前致谢

A. *_*ese 5

从 Visual Studio 2019 16.8.0 Preview 6.0(以及 VS2019 16.7.6)开始,双击设计器中的 ToolStripButton 将启动 ToolStrip_ItemClicked 事件的代码。在这种情况下,您可以检查 ToolStripItemClickedEventArgs.ClickedItem 以查看按下的内容。

private void toolStrip2_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            ToolStripButton tsb = (ToolStripButton)e.ClickedItem;
        }
Run Code Online (Sandbox Code Playgroud)

如果要获取单个 ToolStripButton 的 Click 事件,可以在“属性”窗口中选择它,单击“事件”按钮,然后将其插入其中。