如何在c#comment中添加xaml代码?

时间:2012-09-21 12:59:31

标签: c# xaml xml-documentation

/// <summary>
/// 
/// </summary>
/// <remarks
/// 
/// </remarks>

如何在上面的注释中添加xaml代码,避免代码解析器创建不存在的链接(CTRL + Click消息)?

3 个答案:

答案 0 :(得分:6)

在XAML视图中,将一些要用作注释的XAML

然后用

包围它
<!-- #region XAML Snippet -->
<StackPanel>
  <Button Content="Click me, I do nothing!" />
</StackPanel>
<!-- #endregion -->

注意:我把它放在MainWindow.xaml文件中,但它可以是任何XAML文件。

现在在C#中,将其用作评论:

/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
/// <example>
/// <code source="MyProject.Namespace/MainWindow.xaml" region="XAML snippet" lang="XAML" title="A linked *.xaml file treated as XAML"/>
/// </example>

SandCastle理解这种语法,并会生成适当的文档(例如在MSDN中),但这不会出现在intellisense上。

您可以使用<summary>&gt;代替&lt;符号格式化常规< >正文,以模仿XAML语法,但这将是一种痛苦。< / p>

答案 1 :(得分:6)

您有两种选择:

  1. 标准XML转义

    /// &lt;TextBlock Text=&quot;Hello World!&quot;/&gt;

  2. CDATA部分

    /// <![CDATA[<TextBlock Text="Hello World!"/>]]>

  3. 使用第一个选项,Visual Studio Intellisense将正确显示未转义的XML序列。

答案 2 :(得分:2)

使用CDATA标签?

/// <summary>
/// <![CDATA[<StackPanel />]]>
/// </summary>

注意:这不会出现在Intellisense中,因此如果这是一个要求,则此方法不适用于您的方案。

为什么要将XAML添加到代码文件中?