对于一个项目,我需要一个树视图,允许用户选择一个模块,然后显示在内容区域中。该项目严重依赖本地化,这是由资源文件提供的。使用资源文件在treeview中本地化节点文本
现在我今天才发现,分配给预设树视图节点的文本未包含在资源文件中。
所以问题是,是否有这样做的方式,缺少在代码中映射元素。即为节点分配名称,运行所有节点并根据节点名称从资源管理器中提取资源。
这是我目前在做什么,但是,它只是没有“感觉”的权利:
private void TranslateNodes(TreeNodeCollection treeNodeCollection) {
var rm = Resources.ResourceManager;
foreach (TreeNode node in treeNodeCollection) {
node.Text = rm.GetString(node.Name + "_Text");
this.TranslateNodes(node.Nodes);
}
}
谢谢!
问题是是否有另一种更好的方法。而且...是的,我知道节点的名称不必是唯一的,但在我的情况下是这样。很遗憾,接受... – AxelEckenberger 2010-04-10 10:50:10