gpt4 book ai didi

c# - "is"- 引用或 gettype()

转载 作者:行者123 更新时间:2023-11-30 19:18:45 24 4
gpt4 key购买 nike

foreach 语句的帮助下,我在我的 WinForms 表单中的一些 controls 中搜索。我正在比较通过“is”-reference(a is DataGridView)找到的对象。 “a”是控件集合中的对象。到目前为止一切正常,因为我表单上的比较对象彼此之间完全不同。

在我创建的新表单中,我使用了 DataGridView 的派生版本,名为 my_datagridview。因此,当通过“is”引用将 my_datagridviewDataGridView 进行比较时,不会抛出异常,这是“错误的”,因为我想分别处理两者。

有没有办法正确比较 my_datagridviewDataGridView

最佳答案

Is there a way to compare my_datagridview and DataGridView properly?

一个选择是使用类似的东西:

if (a is MyDataGridView) // Type name changed to protect reader sanity
{
}
else if (a is DataGridView)
{
// This will include any subclass of DataGridView *other than*
// MyDataGridView
}

当然,您可以使用 GetType() 来精确匹配。重要的问题是您希望从 DataGridView 甚至 MyDataGridView 派生的任何其他 类发生什么。

关于c# - "is"- 引用或 gettype(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11653647/

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