暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

C#知识|账号管理系统:数据库查询账号类别动态绑定到下拉框。

雷工笔记 2024-04-14
104
因公众号更改推送规则,请点“在看”并加“星标”

第一时间获取精彩分享


哈喽,你好啊,我是雷工!

本节学习如何将数据库中账号类别动态添加到下拉框列表中。

以下为学习笔记。

01 类型表

SQLServer数据库LGAccountManagentDB中AccountType表的数据内容为:

该数据库及数据表的创建可以查看:

数据库|基于T-SQL创建数据表(练习笔记)

更多关于数据库的文章,可以通过搜索关键词查看;

搜索方法(搜索只能在手机端完成):如下图所示,进入账号点击【文章搜索】,在最上方输入关键词数据库】,然后点击搜索按钮即可。

02 效果展示

当点击【添加账号信息】按钮时,打开添加账号信息子窗体,加载子窗体的同时,查询数据库中账号所有类型,将其添加到账号类型的下拉框中;

03 实现步骤

基于之前的练习,添加相关代码;

3.1、数据访问层

在数据访问层LeiGongDAL中AccountTypeServices类编程代码:

编程思路:

①:首先添加需要的命名空间;

②:写查询数据库中对应表的SQL语句;

③:发送语句查询所有类型,查询结果封装到集合;

AccountTypeServices类代码如下:

    //数据访问类需要引入如下三个命名空间
    using System.Data;
    using System.Data.SqlClient;
    using LeiGongModels;
    namespace LeiGongDAL
    {
        public class AccountTypeService
        {
            /// <summary>
            /// 查询全部账号类型对象,并封装到集合中
            /// </summary>
            /// <returns></returns>
            public List<AccountType> GetAccountTypes()
            {
                string sql = "select TypeName,TypeId from AccountType";
                SqlDataReader reader = SQLHelper.GetReader(sql);
                List<AccountType> list = new List<AccountType>();
                while(reader.Read())
                {
                    list.Add(new AccountType
                    {
                        TypeId = (int)reader["TypeId"],
                        TypeName = reader["TypeName"].ToString()
                    });
                }
                reader.Close();
                return list;
            }
        }
    }

    3.2、业务访问层

    在业务逻辑层LeiGongBLL中的AccountTypeManager类中编写代码:

    编程思路:

    ①:首先引入需要的命名空间;

    ②:业务逻辑很简单,只是传递作用;

    AccountTypeManager类代码如下:

      using LeiGongDAL;
      using LeiGongModels;
      namespace LeiGongBLL
      {
          public class AccountTypeManager
          {
              private AccountTypeService typeService = new AccountTypeService();
              public List<AccountType>GetAccountTypes()
              {
                  return typeService.GetAccountTypes();
              }
          }
      }

      3.3、UI层

      在FrmAddAccount窗体初始化时,将查询到的所有账号类型添加到账号类型下拉框中;

      FrmAddAccount窗体的UI组态可以查看:

      C#知识|账号管理系统:UI层-添加账号窗体设计思路及流程。

      所有初始化的内容需要放到构造方法里面,所以代码如下:

        using LeiGongBLL;
        using LeiGongModels;
        namespace LeiGongNotes
        {
            public partial class FrmAddAccount : Form
            {
                private AccountTypeManager typeManager = new AccountTypeManager();
                public FrmAddAccount()
                {
                    InitializeComponent();
                    //动态填充账号分类下拉框
                    this.cbbType.DataSource = typeManager.GetAccountTypes();
                    this.cbbType.DisplayMember = "TypeName";//设置该属性为UI中看到的信息列设置;
                    this.cbbType.ValueMember = "TypeId";//保存到数据库使用的外键值;
                }
            }
        }

        04 后记

        以上为数据库查询账号类别并动态绑定到下拉框的实现方法,接下来继续学习如何将账号信息保存到数据库。

        有感兴趣的小伙伴欢迎围观。


        觉得有启发点个关注呗↓


        -更多内容可点击下方标签阅读-

        投票选出你感兴趣的交流群

        KingFusion合集|MCGS昆仑通态|数据库

        差旅游记|JavaScript|C#相关

        数字孪生|山海鲸可视化|☞C#2024

        KingSCADA|KingIOServer

        文章转载自雷工笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

        评论