1

创建了一个类以从 SQL 表 [USER] 返回列。但是当数据显示在列表框中时,它只显示前两列。

返回列的类

public class User
{
    public int USER_ID { get; set; }
    public string Username { get; set; }
    public string First_Name { get; set; }
    public string Surname { get; set; }
    public string Email { get; set; }



    public string FullInfo
    {
        get {
            return $"{USER_ID} { Username } { First_Name } { Surname } { Email } ";
            }

    }

}

调用 User 类并填充列表框

 public partial class DashBoard : Form
{
    List<User> user = new List<User>();
    public DashBoard()
    {
        InitializeComponent();
        UpdateBinding();
    }

    private void UpdateBinding()
    {

        UserFoundListBox.DataSource = user;
        UserFoundListBox.DisplayMember = "FullInfo";
    }

    private void SearchButton_Click(object sender, EventArgs e)
    {
        DataAccess db = new DataAccess();

        user = db.GetUser(LastNameText.Text);
        UpdateBinding();
    }

}

当我添加断点并进入用户时,我可以看到数据正确返回。但是当我查看 fullinfo 时,我只能看到 USER_ID 和 USERNAME。当我在文本可视化器中查看 fullinfo 时,我可以看到所有列都已返回,但之间有很大的空格。

4

1 回答 1

2

我的数据库字段中的数据类型是 nchar(250)。

我从 [USER] 表中删除了所有数据,并将字段更新为 varchar(250),然后插入数据。这意味着所有的空间都消失了,所有的数据都显示出来了。

于 2019-03-05T20:44:23.943 回答