表单没有';t显示控件,它显示一个空窗体

本文关键字:显示 窗体 一个 控件 表单 | 更新日期: 2023-09-27 18:24:55

Details表单即使从Welcome表单调用也不会显示任何内容。

以下是所有代码(类似于登录注册项目):

详细信息表单

namespace D
{
    public partial class Details : Form
    {
        public string dtext1;
        public string orform = string.Empty;
        public string orform2 = string.Empty;
        public string orform3 = string.Empty;
        public string orform4 = string.Empty;
        public Details(string incomform,string incomform2,string incomform3,string incomform4)
        {
            InitializeComponent();
            orform = incomform;
            orform2 = incomform2;
            orform3 = incomform3;
            orform4 = incomform4;
        }
        public Details() 
        {
        }
        private void Details_Load(object sender, EventArgs e)
        {
            textBox1.Text = orform;
            textBox2.Text = orform2;
            textBox3.Text = orform3;
            textBox4.Text = orform4;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            this.Hide();
        }
    }
}

欢迎表格

namespace D
{
    public partial class Welcome : Form
    {
        public Welcome()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
           Details Det = new Details();
            Det.ShowDialog();
            this.Close();
        }
    }
}

任何帮助/建议都将是一个巨大的合法帮助

表单没有';t显示控件,它显示一个空窗体

问题出在您的Details表单构造函数中,您没有在其中调用InitializeComponent();。将其更改为:

public Details() 
{
    InitializeComponent();
}

所有设计器生成的代码,包括控件定义、属性和布局,都在InitializeComponent中,应该在窗体中调用它——构造函数,以便将控件添加到窗体并执行布局。

问题是您正在调用此方法:

this.Close();

就像你正在关闭应用程序一样,试着这样做:

private void button1_Click(object sender, EventArgs e)
    {
       Details h = new Details();
        h.ShowDialog();
        this.Hide();
    }

我建议不要调用像Det这样的方法,因为根据您使用的库,Det可能是其他名称,所以这可能会破坏您的程序。