gpt4 book ai didi

c# - 如果使用继承,如何检查列表的类型

转载 作者:太空宇宙 更新时间:2023-11-03 20:27:14 24 4
gpt4 key购买 nike

我目前正在开发一个 C# 程序,该程序创建对象 Task 的列表,对象 Task 是一个基类,许多其他对象继承自它。我想要的是比较所述列表中对象之一的类型,以查看应该打开哪个表单才能对其进行编辑。

这是我已经创建的代码。

private void itemEdit_Click(object sender, EventArgs e)
{
int edi = taskNameBox.SelectedIndex;
Task checkTask = todoList.ElementAt(edi);

if(checkTask.GetType is Note)
{
noteBuilder editNote = new noteBuilder(todoList);
editNote.Show();
}

else if(checkTask.GetType is extendedTask)
{
extendedTaskBuilder editTask = new extendedTaskBuilder(todoList);
editTask.Show();
}

else if(checkTask.GetType is Reminder)
{
reminderBuilder editReminder = new reminderBuilder(todoList);
editReminder.Show();
}

else if (checkTask.GetType is Appointment)
{
appointmentBuilder editAppointment = new appointmentBuilder(todoList);
editAppointment.Show();
}
}

在次要说明中,如果不是在表单之间传递列表并生成显示信息的表单的新对象,而是在表单之间传递单个对象,并且每次新元素时只更新表单,这样会更容易吗被添加到列表中。

非常感谢

最佳答案

你试过这样检查吗:

if (checkTask is Note)
{

}
...

关于c# - 如果使用继承,如何检查列表的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9926398/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com