无法让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的字母。什么错了吗?
基本上,你忘记写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));