リストビューで行の重複を防ぐには?
ListViewItem item = listView1.FindItemWithText(EmpID.Text);
if (!listView1.Items.Contains(item))
{
listView1.Items.Add(new ListViewItem(new string[] { EmpID.Text, Fname.Text, Lname.Text }));
}
ListViewItem item = listView1.FindItemWithText(EmpID.Text);
if(item == null){
listView1.Items.Add(new ListViewItem(new string[] { EmpID.Text, Fname.Text, Lname.Text }));
}
または、 を使用することもできますIndexOf()
が、上記のコードの方が優れています (私はそう思います):
if(listView1.Items.IndexOf(item) == -1){
listView1.Items.Add(new ListViewItem(new string[] { EmpID.Text, Fname.Text, Lname.Text }));
}
または少しLINQ
:
if(!listView1.Items.OfType<ListViewItem>().Any(x=>x.Text.Equals(EmpID.Text, StringComparison.CurrentCultureIgnoreCase))){
listView1.Items.Add(new ListViewItem(new string[] { EmpID.Text, Fname.Text, Lname.Text }));
}