C#学习笔记:Windows窗体应用程序-listBox的使用示例

参考书目:C#6.0学习笔记——从第一行C#代码到第一个项目设计(作者周家安)P326

学习内容:使用listBox的DataSource属性

第一步:对话框布局如下:

第二步:定义一个Employee类。

第三步:造Form1类的内部定义一个GetData方法,产生一个Employee类的实例,作为示例数据源。

第四步:编写Form1构造函数代码和button的代码。

本程序主要代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Example11_13
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            //处理Button.click事件
            button1.Click += button1_Click;
            listBox1.DisplayMember = "EmpName"; //列表中显示员工姓名
            listBox1.ValueMember = "EmpID";     //列表中显示员工编号
            listBox1.DataSource = GetData();    //

        }
        /// <summary>
        /// 定义一个私有方法,产生Employee对象实例
        /// </summary>
        /// <returns></returns>
        private List<Employee> GetData()
        {
            return new List<Employee>
            {
                new Employee{EmpID = "E-1001", EmpName = "小方"},
                new Employee { EmpID = "K-1021", EmpName = "小赵" },
                new Employee { EmpID = "F-2025", EmpName = "小卢" },
                new Employee { EmpID = "D-1230", EmpName = "小曾" },
                new Employee { EmpID = "E-1005", EmpName = "小罗" },
                new Employee { EmpID = "G-4010", EmpName = "小王" },
                new Employee { EmpID = "X-9003", EmpName = "小杜" },
                new Employee { EmpID = "L-7106", EmpName = "小纪" }
            };
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Button btn = sender as Button;
            if(listBox1.SelectedIndex  > -1)
            {   //选中一项时
                string empID = listBox1.SelectedValue.ToString();
                btn.Text = string.Format("当前选中的员工编号为:{0}", empID);

            }
        }
    }
    /// <summary>
    /// 定义Employee类,包含员工编号和员工姓名属性
    /// </summary>
    public class Employee
    {
        public string EmpID { get; set; }       //属性:员工编号
        public string EmpName { get; set; }      //属性:员工姓名
    }

}

运行结果如下。在ListBox中选择一项,然后单击,可以看到选中的Employee对象的EmpID属性值呈现在按钮上。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是创建Windows窗体应用程序项目并实现学生记录的读写的基本步骤: 1. 打开Visual Studio,选择“新建项目”,在弹出的窗口中选择“Windows 窗体应用程序”模板。 2. 命名项目为“experiment1”,选择保存路径后点击“创建”按钮。 3. 在项目解决方案中,右键单击“experiment1”节点,选择“添加” -> “窗体”,命名窗体为“Form1”。 4. 在窗体设计器中,添加以下控件: - Label控件,用于显示“学生姓名”; - TextBox控件,用于输入学生姓名; - Label控件,用于显示“学生年龄”; - TextBox控件,用于输入学生年龄; - Button控件,用于保存学生记录; - ListBox控件,用于显示已保存的学生记录。 5. 双击“保存学生记录”按钮,进入事件处理程序,添加以下代码: ```csharp // 获取学生姓名和年龄 string name = textBox1.Text; int age = int.Parse(textBox2.Text); // 拼接学生记录 string record = $"{name} ({age}岁)"; // 将学生记录添加到ListBoxlistBox1.Items.Add(record); // 清空输入框 textBox1.Clear(); textBox2.Clear(); ``` 6. 双击窗体,进入Load事件处理程序,添加以下代码: ```csharp // 尝试从文件中读取学生记录 string[] records = File.ReadAllLines("students.txt"); // 将学生记录添加到ListBoxlistBox1.Items.AddRange(records); ``` 7. 双击窗体,进入FormClosing事件处理程序,添加以下代码: ```csharp // 将学生记录保存到文件中 string[] records = listBox1.Items.Cast<string>().ToArray(); File.WriteAllLines("students.txt", records); ``` 8. 运行程序,输入学生姓名和年龄,点击“保存学生记录”按钮,可以将学生记录添加到ListBox中。关闭程序后再次打开,可以看到之前保存的学生记录仍然存在。 至此,我们已经完成了创建Windows窗体应用程序项目并实现学生记录的读写的基本步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值