Вы можете использовать полный синтаксис свойства для ссылки на индексаторы:
namespace ConsoleApplication1
{
/// <summary>
/// See indexer <see cref="P:ConsoleApplication1.MyDictionary`2.Item(`0)"/>
/// </summary>
/// <typeparam name="TKey"></typeparam>
/// <typeparam name="TValue"></typeparam>
public class MyDictionary<TKey, TValue>
{
/// <summary>
/// Indexer
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public TValue this[TKey key]
{
get { return default(TValue); }
set { }
}
}
}
Вы можете проверить правильность разрешения свойства, проверив сгенерированный файл XML:
<doc>
<assembly>
<name>ConsoleApplication1</name>
</assembly>
<members>
<member name="T:ConsoleApplication1.MyDictionary`2">
<summary>
See <see cref="P:ConsoleApplication1.MyDictionary`2.Item(`0)"/>
</summary>
<typeparam name="TKey"></typeparam>
<typeparam name="TValue"></typeparam>
</member>
<member name="P:ConsoleApplication1.MyDictionary`2.Item(`0)">
<summary>
Indexer
</summary>
<param name="key"></param>
<returns></returns>
</member>
</members>
</doc>
Обратите внимание, какпервый P:
совпадает со вторым.
Наконец, убедитесь, что он работает с Intellisense:
![Intellisense for Indexer](https://i.stack.imgur.com/yv8pP.png)
Обновление от автора оригинала (myermian):
Я немного покопался и обнаружил, что короткое замыкание свойства индексатора просто " this ".Пример: <see cref="this"/>