WPF的Doxygen文档

时间:2015-04-01 11:59:59

标签: c# wpf xaml documentation doxygen

我目前正在为我的C#代码创建文档。我已经做了很多普通的源代码并设置了doxygen来创建HTML。最后,我到达了在WPF中完成的UI,因此XAML和源代码都是如此。现在我的问题是,记录这些文件的最佳方法是什么?可以在XAML中进行注释,但这些注释无法有效,因为它们无法嵌套。另外我不知道Doxygen是否可以处理XAML文档。那么应该在xaml.cs文件中记录所有内容吗?

2 个答案:

答案 0 :(得分:1)

我发现了一个或多或少好的解决方案。首先,您必须将文件扩展名添加到FILE_PATTERNS,所以* .xaml就是我的情况。 Doxygen使用扩展来确定要使用的解析器。我想默认是C.接下来你添加你的文档:

<!-->
/** \file
* \brief A brief file description.
* 
* A more elaborated file description.
*/ -->

&lt; ! - - &gt; 是xaml文件的评论部分。当Doxygen解析文件时,它会删除文档而不添加文档。这就是为什么有一个&gt; 来欺骗Doxygen解析器已经完成评论的原因。我知道这很丑,但可能发生的最糟糕的情况是我的描述在文档中丢失但仍可在文件中找到。因此,只要没有更好的方法,我会坚持这一点。

答案 1 :(得分:1)

文件级评论工作正常。

我也在XAML文件中使用类:

<!-->
/** \file 
* \brief Global resources via the nexus_client.Generic class.
* 
* All user configurable parameters defined here.
*/ -->
    <ResourceDictionary
    x:Class="nexus_client.Generic"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:core="clr-namespace:System;assembly=mscorlib"
    xmlns:local="clr-namespace:nexus_client">
    <!-->
    /** \class nexus_client.Generic
    * \brief Global resources via the nexus_client.Generic class.
    * 
    * All user configurable parameters defined here.
    */ -->

现在我正在尝试记录属性:

<!-->
/** \property nexus_client.Generic.OEBackgroundBrushBuy
* \brief Background colours for Order Entry Views based on the side (Buy, Sell) - Buy Side
*
*/ -->

但这不起作用。也尝试了\ var但没有去。

我可以看到doxygen正在解析此注释块,因为有错误消息:

/local/home/oberss2/working/branches/RIV-1158-Nexus-1.2.1/nexus_client/nexus_client/Themes/Generic.xaml:136:警告:未声明或定义记录的符号`nexus_client Generic OEBackgroundBrushBuy'

我不明白为什么它会以不同于XAML文件中的类来处理属性,也没有声明。