gpt4 book ai didi

c# - ResourceDictionary 键的顺序是如何确定的?

转载 作者:行者123 更新时间:2023-11-30 15:07:16 24 4
gpt4 key购买 nike

我有以下 ResourceDictionary(缩写):

<ResourceDictionary>
<Fluent:RibbonContextualTabGroup Header="Dokument" x:Key="dokumentRibbonGroup" x:Name="dokumentRibbonGroup" />
<Fluent:RibbonTabItem x:Key="dokumentRibbonTab" Header="Start" />
<Fluent:RibbonTabItem x:Key="ueberpruefenRibbonTab" Header="Überprüfen" />
<Fluent:RibbonTabItem x:Key="austauschRibbonTab" Header="Austausch" />
</ResourceDictionary>

当我访问字典的 Keys 属性时,键的顺序如下:

dokumentRibbonTabaustauschRibbonTabueberpruefenRibbonTabdokumentRibbonGroup

我无法理解该顺序。它不是按字母顺序排列的,不是倒序的,特别是不是原始顺序。有人有提示吗?或者更好的是,关于如何在 ResourceDictionary 中指定项目顺序的建议?

最佳答案

它很可能以某种方式基于哈希码。 (虽然不一定只是“按哈希码的升序排列”。)特别是,文档状态:

The ResourceDictionary class is not derived from DictionaryBase. Instead, the ResourceDictionary class implements IDictionary but relies on a Hashtable internally.

鉴于它使用哈希表,很可能顺序取决于哈希。

通常字典没有排序 - 或者更确切地说,该顺序是不应依赖的实现细节。

鉴于我看不到任何指定顺序的文档,我认为您应该它视为无序的。如果您想按特定顺序显示 key ,您应该自己做。

关于c# - ResourceDictionary 键的顺序是如何确定的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6827626/

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