C# WinC窗体列表框无法获取正确的值

C# WinC窗体列表框无法获取正确的值,c#,winforms,listbox,C#,Winforms,Listbox,通过名为lbcustomers的列表框,我有以下内容: DataTable Customers = GetAllCustomers(); lbCustomers.DataSource = Customers; lbCustomers.DisplayMember = "lastName"; lbCustomers.ValueMember = "Cell"; 正确显示姓氏。但是在一个事件中使用以下命令,我会在第二个列表框中填充System.Data.

通过名为lbcustomers的列表框,我有以下内容:

DataTable Customers = GetAllCustomers();
        lbCustomers.DataSource = Customers;
        lbCustomers.DisplayMember = "lastName";
        lbCustomers.ValueMember = "Cell";
正确显示姓氏。但是在一个事件中使用以下命令,我会在第二个列表框中填充System.Data.DataRowView

if (lbCustomers.SelectedItems.Count > 0)
            {
                for (int i = 0; i < lbCustomers.SelectedItems.Count; i++)
                {
                    if (!listBox2.Items.Contains(lbCustomers.SelectedItems[i]))
                    {
                        listBox2.Items.Add(lbCustomers.SelectedItems[i]);
                    }
                }
            } 

我有多个数据源进入listBox2,所以我只想从所选的lbCustomer项目中获取单元格值

您是否也设置了`` listBox2的DisplayMember属性,否则将显示您看到的ToString的输出?可能需要设置listBox2.DisplayMember=lastName;好的,为了让我更好地理解这一点,lbCustomers.SelectedItems[I]会通过整行吗?那么ValueMember实际上做了什么?