是否可以将自定义资源类型添加到.NET .resx文件中?

时间:2013-10-31 10:22:38

标签: visual-studio visual-studio-2012 resources embedded-resource resourcebundle

在Visual Studio .NET项目中,您可以创建包含可以本地化的资源的.resx文件。开箱即用Visual Studio可以识别字符串,图像,图标,音频,文件以及其他名为“其他”的内容,我并不理解。

我想知道的是 - 我可以扩展Visual Studio并在此处添加自定义类型 - 例如“Messages”(消息不仅包含文本,还包含严重性和其他标志)?当然,我需要为Visual Studio提供我自己的编辑器并处理必要的代码隐藏生成等 - 但这一切都是可行的。也就是说,如果Visual Studio允许这种可扩展性。可以?如果是,我在哪里可以找到任何文件?

P.S。我正在使用Visual Studio 2012。

1 个答案:

答案 0 :(得分:1)

是的,这完全有可能。要执行此操作,您要包含的类型必须有TypeConverter,可以转换为InstanceDescriptor。有an example of this on MSDN

创建TypeConverter后,您会使用TypeConverterAttribute来装饰该类型,以告知框架使用该类型转换器。

例如:

[TypeConverter(typeof(MyTypeConverter)]
public class MyType
{
   ...
}

然后,您可以将该类型的值保存到resx文件中。