如何检查 listView 是否包含 DateTime 或 String?
我试过了
if (!listView1.Items.Contains(SetAlarm.Value))
但它无法转换System.DateTime
为System.Windows.Forms.ListViewItem
.
如何检查 listView 是否包含 DateTime 或 String?
我试过了
if (!listView1.Items.Contains(SetAlarm.Value))
但它无法转换System.DateTime
为System.Windows.Forms.ListViewItem
.
listView1.Items.Contains(new ListItem(DateTime.Now))
不管用。Contains
仅当我们实际上在ListView.Items
集合中传递一个 Item 时才有效。我认为您将不得不使用 for 循环:(
foreach (ListViewItem s in listView1.Items)
{
if (s.Text != SetAlarm.Value.ToString()) continue;
MsgBox.Show("Found: " + SetAlarm.Value.ToString());
return;
}
bool isMatch = false;
int matchIndex = -1;
DateTime resultDate = = new DateTime();
foreach(ListViewItem lvItem in listView1.Items)
{
if(DateTime.TryParse(lvItem.Text, out resultDate ))
{
isMatch = true;
matchIndex = lvItem.Index;
break;
}
}
if(isMatch) Console.WriteLine("match at index : " + matchIndex.ToString() + " = " + resultDate.ToString());