winform listBox统计信息,利用跨窗体传值实现信息修改-洋葱先生-杨少通
发布日期:2021-10-03 07:58:45 浏览次数:2 分类:技术文章

本文共 3300 字,大约阅读时间需要 11 分钟。

winform ListBox统计信息,利用跨窗体传值实现信息修改

实现功能:

①点击新增,弹出新界面,填入姓名、性别和年龄,点击“确定”按钮后新界面关闭,主窗体新增一条信息

②选择任意行数据(比如第二行“李四”),点击修改,弹出新界面,并显示第二行数据的具体信息,在新界面修改完毕(比如姓名改为“李四2”,性别改为“男”),点击“确定”按钮后新界面关闭,主窗体第二行信息做相应修改(姓名改为“李四2”,性别改为“男”)。

③需要创建窗体3-5-1、3-5-2、3-5-3

④窗体3-5-1中所需控件:GroupBox、ListBox、2个Button(分别命名新增、修改)。Name属性值如下:

在这里插入图片描述

该窗体代码如下:

//窗体Load事件    private void _3_5_1_Load(object sender, EventArgs e)    {        //groupBox更名        groupBox1.Text = "人员详细情况表";        //给ListBox1添加项        listBox1.Items.Add("张三 男 20");        listBox1.Items.Add("李四 女 10");        listBox1.Items.Add("张牛 男 22");        listBox1.Items.Add("王武 男 20");    }    //“添加”按钮的click事件    private void btnInsert_Click(object sender, EventArgs e)    {        //实例化f2        _3_5_2 f2 = new _3_5_2();        //f2中的f1赋值为该窗体        f2.f1 = this;        //f2以非模式化形式显示(可进行窗体切换)        f2.Show();    }    //“修改”按钮的click事件    private void btnRevise_Click(object sender, EventArgs e)    {        //实例化f3        _3_5_3 f3 = new _3_5_3();        //f3中的公共变量赋值为ListBox1中选定项的内容        f3.reviseInformation = listBox1.SelectedItem.ToString();        //f3中的f1赋值为该窗体        f3.f1 = this;        //f3以非模式化形式显示(可进行窗体切换)        f3.Show();    }    //跨窗体传值的添加函数    public void insertInform_Function(string newInform)    {        //添加新项,内容为newInform的值        listBox1.Items.Add(newInform);    }    //跨窗体传值的修改函数    public void reviseInform_Function(string newInform)    {        //更改选中项的值,不能直接改变selecedItem的值,所以采用如下方法        listBox1.Items[listBox1.SelectedIndex] = newInform;    }

⑤窗体3-5-2中所需控件:3个Label,2个TextBox,1个ComboBox,1个Button。Name属性值如下:

在这里插入图片描述

该窗体代码如下:

public _3_5_1 f1;    //窗体load事件    private void _3_5_2_Load(object sender, EventArgs e)    {        //窗体命名为“添加信息”,显示于标题栏。        this.Text = "添加信息";        //comboBox添加项        comboBox1.Items.AddRange(new object[2] { "男", "女" });        //将comboBox改为下拉不可输入式        comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;    }    //“确认”按钮    private void btnOK_Click(object sender, EventArgs e)    {        string s;        //字符串s被赋值为新添加项的内容        s = textBox1.Text + " " + comboBox1.SelectedItem.ToString() + " " + textBox2.Text;        //将s作为实参传递回f1        f1.insertInform_Function(s);        //f2关闭        this.Close();        //提示“添加成功”        MessageBox.Show("添加成功!");    }

⑥窗体3-5-2中所需控件:3个Label,2个TextBox,1个ComboBox,1个Button。Name属性值如下:

在这里插入图片描述

该窗体代码如下:

public string reviseInformation;    public _3_5_1 f1;    //窗体load事件    private void _3_5_3_Load(object sender, EventArgs e)    {        //窗体命名为“修改信息”,显示于标题栏。        this.Text = "修改信息";        //comboBox添加项        comboBox1.Items.AddRange(new object[2] { "男", "女" });        //将comboBox改为下拉不可输入式        comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;        //以空格分割数据,存入数组s中        string[] s = reviseInformation.Split(' ');        //获得姓名        textBox1.Text = s[0];        //获得性别        comboBox1.SelectedItem = s[1];        //活动年龄        textBox2.Text = s[2];    }    private void btnOK_Click(object sender, EventArgs e)    {        string s;        //字符串s被赋值为更改后的内容        s = textBox1.Text + " " + comboBox1.SelectedItem.ToString() + " " + textBox2.Text;        //将s作为实参传递回f1        f1.reviseInform_Function(s);        //f3关闭        this.Close();        //提示“修改成功”        MessageBox.Show("修改成功!");    }

如有转载请注明来源: www.dreamload.cn/blog/?p=351&preview=true (洋葱先生)

转载地址:https://blog.csdn.net/Kindergarten_Sir/article/details/108587932 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:winform 跨窗体传值+DMI应用程序(信息管理系统)-洋葱先生-杨少通
下一篇:winform文件打开对话框(打开rtf文件)、颜色对话框、字体对话框-洋葱先生-杨少通

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月02日 07时01分11秒