C# MDIWindowListITem不工作

C# MDIWindowListITem不工作,c#,.net,winforms,C#,.net,Winforms,这件事真的把我难住了。我有一些正在实例化的表单。当我实例化一个表单时,我通过 form1.MdiParent=此 我已将menustrip的MDIWindowListITem属性设置为toolstripmenuitem 但是,此toolstripmenuitem在实例化mdi子窗体时不显示该子窗体 有人对此有什么想法吗 欢迎提供任何信息/线索/提示。我正在使用.NETFramework 3.5 问候 ,我相信,您必须编写代码,以便手动添加 有关指针,请参见此处的示例: 编辑 你说得对忽略我之前

这件事真的把我难住了。我有一些正在实例化的表单。当我实例化一个表单时,我通过

form1.MdiParent=此

我已将menustrip的MDIWindowListITem属性设置为toolstripmenuitem

但是,此toolstripmenuitem在实例化mdi子窗体时不显示该子窗体

有人对此有什么想法吗

欢迎提供任何信息/线索/提示。我正在使用.NETFramework 3.5

问候


我相信,您必须编写代码,以便手动添加

有关指针,请参见此处的示例:

编辑

你说得对忽略我之前的条目下面是一个非常简单的MDI应用程序的代码,它似乎可以完成你的任务

这只是两张空白表格。表单1具有
IsMDIContainer=true
。它还有
menuStrip1
,其中包含两项“新建”(
newToolStripMenuItem
)和“窗口”(
windowsToolStripMenuItem
)。单击“新建”将打开一个新的子窗口。我已将
menuStrip1
MDIWindowListItem
设置为
windowsMenustriItem
。打开一个新的子窗口时,单击“窗口菜单子项”将生成一个下拉列表,显示所有打开的窗口

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        private int count;
        public Form1()
        {
            InitializeComponent();
        }

        private void newToolStripMenuItem_Click(object sender, EventArgs e)
        {
            count++;
            //Set a window title text as this is what is shown in the window list.
            Form2 newForm = new Form2() { Text = string.Format("Window {0}", count) };
            newForm.MdiParent = this;
            newForm.Show();//<--- this needed to show window in list.
        }
    }
}
命名空间窗口窗体应用程序1
{
公共部分类Form1:Form
{
私人整数计数;
公共表格1()
{
初始化组件();
}
私有void newToolStripMenuItem\u单击(对象发送方,事件参数e)
{
计数++;
//设置窗口标题文本,因为这是窗口列表中显示的内容。
Form2 newForm=newform2(){Text=string.Format(“窗口{0}”,计数)};
newForm.MdiParent=此;

newForm.Show();//我相信您必须编写代码,以便手动添加

有关指针,请参见此处的示例:

编辑

你说得对忽略我之前的条目下面是一个非常简单的MDI应用程序的代码,它似乎可以完成你的任务

它只是两个空白表单。Form1有
IsMDIContainer=true
。它还有
menuStrip1
,其中包含两项“新建”(
newToolStripMenuItem
)和“窗口”(
windowsToolStripMenuItem
)。单击“新建”将打开一个新的子窗口。我已将
menuStrip1
MDIWindowListItem
设置为
windowsMenustriItem
。打开一个新的子窗口时,单击
windowsMenustriItem
会生成一个下拉列表,显示所有打开的窗口

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        private int count;
        public Form1()
        {
            InitializeComponent();
        }

        private void newToolStripMenuItem_Click(object sender, EventArgs e)
        {
            count++;
            //Set a window title text as this is what is shown in the window list.
            Form2 newForm = new Form2() { Text = string.Format("Window {0}", count) };
            newForm.MdiParent = this;
            newForm.Show();//<--- this needed to show window in list.
        }
    }
}
命名空间窗口窗体应用程序1
{
公共部分类Form1:Form
{
私人整数计数;
公共表格1()
{
初始化组件();
}
私有void newToolStripMenuItem\u单击(对象发送方,事件参数e)
{
计数++;
//设置窗口标题文本,因为这是窗口列表中显示的内容。
Form2 newForm=newform2(){Text=string.Format(“窗口{0}”,计数)};
newForm.MdiParent=此;

newForm.Show();//您好,谢谢!但我认为这不是必需的。只需设置menustrip控件的MDIWindowListitem属性就足够了。其余的工作应由设计器负责。不过无论如何,感谢您的输入。我将浏览您发送到的MSDN链接me@bornagaindeveloper-我弹出了一些代码。你需要确保你的MDI child窗口的文本值设置为下拉列表中显示的文本值。此外,它们在显示()之前不会显示方法已被调用。您好,谢谢!但我认为这不是必需的。只需设置menustrip控件的MDIWindowListitem属性就足够了。其余部分应由设计器负责。但无论如何,感谢您的输入。我将浏览您发送到的MSDN链接me@bornagaindeveloper-我弹出了一些代码。你需要确保MDI子窗口的文本值设置为下拉列表中显示的文本值。此外,在调用Show()方法之前,它们不会显示。