views:

586

answers:

3

According to this article, it's possible to get multiline XML comments -- instead of using ///, use /** */. This is my interpretation of what multiline comments are, and what I want to have happen:

/**
 * <summary>
 * this comment is on line 1 in the tooltip
 * this comment is on line 2 in the tooltip
 * </summary>
 */

However, when I use this form, the tooltip that pops up when I hover over my class name in my code is single-line, i.e. it looks exactly as if I had written my comment like this:

/// <summary>
/// this comment is on line 1 in the tooltip
/// this comment is on line 2 in the tooltip
/// </summary>

Is this behavior actually possible still in VS2008?

EDIT

gabe pointed out that I have misunderstood what "multiline" means, and I actually need to use <para> or <br> to get my intended effect. I went ahead and used <br> because I want to control where the line breaks occur, i.e.

/// <summary>
/// this comment is on line 1 in the tooltip<br/>
/// this comment is on line 2 in the tooltip<br/>
/// </summary>

When I look at the tooltip for this class in my code, everything still ends up on one line... WTH? Did I do something wrong here?

UPDATE

Ok, I went ahead and tried the tag on each line, and that works. Not sure why
doesn't.

/// <summary>
/// <para>this comment is on line 1 in the tooltip</para>
/// <para>this comment is on line 2 in the tooltip</para>
/// </summary>
+1  A: 

Add <br/> for line breaks or enclose the paragraphs in <para>...</para>. It's just like XML and HTML, the line break is nothing but whitespace.

Lucero
+1  A: 

Try this

/// <summary>
/// this comment is on line 1 in the tooltip
/// <para>this comment is on line 2 in the tooltip</para>
/// </summary>
bic
+6  A: 

It sounds like you are confused about what "multi-line" means. A single-line comment ends at the end of the line of source code, and if you want to continue that comment you must put a "///" on the next line. A multi-line comment starts with a "/*" and ends with a "*/" so it can end either on the same line or multiple lines down.

Being "multi-line" says nothing about any how the text within the comment is displayed. To put a line break in an XML comment you must insert a <br/> ("break") or wrap the line in a <para> ("paragraph") tag.

Gabe
thank goodness. thank you for clarifying this, I definitely had a different notion of what "multi-line" was referring to. I'm very glad that I can go back to using /// and I'll start using <para>!
Dave
actually, I do need to use <br/> since I want to control the line breaks. I went ahead and added <br/> to the end of every line in my comments, and it still puts everything in the tooltip in one line.
Dave
ok, well <para> on each line works... thanks!
Dave
@gabe: do you know how to preserve whitespace?
Dave
What whitespace do you want to preserve? If it's just spaces you can use ` `.
Gabe
I have indentation in my comments and wanted them to be visible in the tooltip.
Dave
I think you want the `<code>` tag.
Gabe
Hmm... I tried the <code> tag and it didn't seem to work any differently. I tried replacing <para> with <code>, and also tried to wrap all of the <para /> elements with <code>.. no luck.
Dave
Oh, I see. You want the tooltip to preserve your formatting. Unfortunately that's up to the tooltip, not up to you. You need to have an editor that shows tooltips with the formatting. Have you ever seen a tooltip that includes indentation?
Gabe
In WPF I have all sorts of crazy tooltips so you never know. ;)
Dave