我在使用Teleriks RadSpreadsheet(工作簿,工作表等)为列提供唯一标识符时遇到了一些问题。
这是我的问题:我的第一行是标题行,例如:
|姓名(父亲)|年龄|姓名(母亲)| ....
我的第一行中的那些列标题不是唯一的。它们的名称完全相同,尽管它们用于不同的东西。为了提高可扩展性,我不想使用索引来查找我正在寻找的指定列。当我在中间添加另一列时,程序仍然可以正常工作而无需任何调整。
相反,我的程序应该使用普通键来查找列。例如:我的程序收到一个返回列的请求,其中
我尝试过的事情: - 我目前使用的版本中没有隐藏列。 - 通过简单的字符串搜索查找列也不起作用,因为它们不是唯一的,所以如果我搜索父名称列,我有两列标题" name"并且无法区分,究竟什么是正确的列。
for (int i = 0; i < columnCount; i++)
{
//Check value equals searchtxt..
}
- 我没能(没有发现任何东西)给细胞/列一个隐藏的名字,比如“母亲的名字”。和父亲的姓名&#39;)
你还有其他想法吗?
答案 0 :(得分:1)
您可以使用像Dictionary这样的数据结构,例如,您可以定义一个键 - 这将是&#34;隐藏的名称&#34;,以及一个值 - 标题单元格的CellIndex。
要使字典保持最新,您必须订阅某些事件,例如
Worksheet.Cells.CellRangeInsertedOrRemoved
并更新缓存的名称以匹配其最终的新CellIndex。这样,您将使用字典查找与您定义的名称对应的单元格索引。