2010-11-15 79 views
2

我定義一個回調場和事件屬性吧:有關字段的詳細XML文檔。這有可能嗎?

private Action<int, int, TaskCallbackArgs> _callbackEvent  
/// <summary> 
/// Provides a callback event for task. 
/// </summary> 
public event Action<int, int, TaskCallbackArgs> CallbackEvent 
{ 
    add 
    { 
    _callbackEvent += value; 
    } 
    remove 
    { 
    _callbackEvent -= value; 
    } 
} 

在我的代碼有調用_callbackEvent。好吧,但是當我輸入_callbackEvent( VS向我展示IntelliSense時,我的方法需要(int arg1, int arg2, TaskCallbackArgs arg3)參數。 當我在一段時間後打開這段代碼時,我不記得arg1,arg2和arg3是什麼。

有沒有辦法使用XML文檔的字段如下?

/// <summary> 
/// Description 
/// </summary> 
/// <param name="current">Param description...</param> 
/// <param name="total">Param description...</param> 
/// <param name="additional">Param description...</param> 

謝謝!

回答

1

Action<int, int, TaskCallbackArgs>是一個具有三個參數的委託類型。
您可以爲該字段編寫XML文檔註釋,但僅適用於該字段本身。

要爲委託參數添加參數名稱和文檔註釋,您需要創建自己的委託類型。

例如:

/// <summary> 
/// Description 
/// </summary> 
/// <param name="current">Param description...</param> 
/// <param name="total">Param description...</param> 
/// <param name="additional">Param description...</param> 
public delegate void CallbackHandler(int current, int total, TaskCallbackArgs additional); 
+0

是的,這是這樣的:) – Yuriy 2010-11-15 13:28:35

+0

當我在寫這個代碼,我的想法是使用通用委託我節省我的時間,但我錯了:( – Yuriy 2010-11-15 13:30:32