无法让Listview显示文本框中的字母

本文关键字:文本 Listview 显示 | 更新日期: 2023-09-27 18:16:48

我有两个TextBoxes:第一个是Firstname,另一个是Lastname。我可以得到的值从firstName TextBox,但不是lastName TextBox。

文本框在CustomerFrame类中。

if (customerframe.ShowDialog() == DialogResult.OK) 
{
    listView1.Items.Add("[{0}, {1}]", customerframe.firstName, customerframe.lastName);
}

下面是CustomerFrame类:

private void btnOk_Click(object sender, EventArgs e)
{
    firstName = tbFirstName.Text;
    lastName = tbLastName.Text;
}

在ListView中只显示来自firstName的字母。什么错了吗?

无法让Listview显示文本框中的字母

基本上,你忘记写string.Format了。代码应该是

var item = string.Format("[{0}, {1}]", customerframe.firstName, customerframe.lastName);
listView1.Items.Add(item);

现在的代码是这样写的,当你打算调用这个重载时,它错误地调用了Add方法的重载。

在您最终调用的重载中(带有三个参数),第二个参数是项目文本——将显示的内容。这就是为什么只有firstName显示在列表中。

Add的签名为

(string key, string text, string imageKey)

见:http://msdn.microsoft.com/en-us/library/d6a9wz99.aspx

我相信你在找:

listView1.Items.Add(String.Format("[{0}, {1}]", customerframe.firstName, customerframe.lastName));