Karlx Swanovski
Karlx Swanovski

Reputation: 2989

Prevent duplication of row in listview

How to prevent duplication of row in listview?

 ListViewItem item = listView1.FindItemWithText(EmpID.Text);
 if (!listView1.Items.Contains(item))
 {
 listView1.Items.Add(new ListViewItem(new string[] { EmpID.Text, Fname.Text, Lname.Text }));
 }

Upvotes: 1

Views: 98

Answers (1)

King King
King King

Reputation: 63317

ListViewItem item = listView1.FindItemWithText(EmpID.Text);
if(item == null){
  listView1.Items.Add(new ListViewItem(new string[] { EmpID.Text, Fname.Text, Lname.Text }));
}

Or you can also use IndexOf(), although the above code is better (I think so):

if(listView1.Items.IndexOf(item) == -1){
  listView1.Items.Add(new ListViewItem(new string[] { EmpID.Text, Fname.Text, Lname.Text }));
}

Or by a little 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 }));
}

Upvotes: 2

Related Questions