Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 什么';什么是填补数字列表空白的最简单方法?_C#_Ms Word_Sorteddictionary - Fatal编程技术网

C# 什么';什么是填补数字列表空白的最简单方法?

C# 什么';什么是填补数字列表空白的最简单方法?,c#,ms-word,sorteddictionary,C#,Ms Word,Sorteddictionary,我在标题的一行中解释这个问题时遇到了一些困难,但希望此描述能为您提供足够的洞察力,让您完全理解我的问题: 我在Word文档中有几个变量。每个变量都有一个值,该值是一个数字(从0到变量数)。正在用这些变量填写SortedDictionary,但有可能以前删除过一个变量,所以可以说存在一个“间隙”。例如: 将5个变量添加到SortedDictionary中,其中第一个数字是int,字符串对应于SortedDictionary的字符串部分 0 "name 1" 1 "name 2" 2 "name 3

我在标题的一行中解释这个问题时遇到了一些困难,但希望此描述能为您提供足够的洞察力,让您完全理解我的问题:

我在Word文档中有几个变量。每个变量都有一个
,该值是一个数字(从0到变量数)。正在用这些变量填写
SortedDictionary
,但有可能以前删除过一个变量,所以可以说存在一个“间隙”。例如:

将5个变量添加到
SortedDictionary
中,其中第一个数字是
int
,字符串对应于SortedDictionary的
字符串部分

0 "name 1"
1 "name 2"
2 "name 3"
现在删除了其中一个变量,因此字典的填写方式如下:

0 "name 1"
2 "name 3"
最后,所有SortedDictionary条目都被添加到一个列表框中,我使用第一个数字作为插入的索引。您可以想象,当
索引1
不存在,但
索引0
存在时,当它尝试将项目添加到
索引2
中时,会出现错误

我想解决这个问题的方法是,当用户调用
DeleteVariable()
方法并删除一个变量时,所有变量都应该自动更新其值(数字),因此当SortedDictionary获取所有变量时,列表框不再给出错误,因为所有数字都匹配(没有间隙)


请告知。

我将使用列表而不是排序字典。您的号码将成为列表中的索引。这样,如果您从列表中删除一个项目(可能使用list.RemoveAt(index)),那么所有其他索引将以您想要的方式有效地“更新”

是的,我的想法也是如此(但我在回答中犯了一个错误,所以我会投你的票)。这太完美了。然后我可以根据列表的索引调整所有变量值。太棒了,谢谢你!