【Visual Studio】【WPF】xaml のインテリセンスに表示される星(★)は何?

Visual Studio Community 2019 Version 16.2.2 で xaml の編集をしていたら、インテリセンスの一部のメンバーの頭に星マーク(★)が付いているのに気付いた。

 

この星マーク(★)は何??

 

・・・すごく個人的なことなんだけど、
私は自分でコードを書くとき、大事なところや忘れたくないところや後で見直したいところに「★」をコメントとして残すことが多い。だからインテリセンスのメンバに星が付いてるのを見たとき、「俺こんなところに★を付けたっけ?」と思った。

でもそういうことじゃないんだよね。

調べてみたら、これは VS Version 16.1 からの新機能の1つ、「IntelliCode」・・・ らしい(インテリセンスじゃなくて、インテリコード)。

インテリコードとは、AI で強化されたインテリセンスのこと(インテリセンスの強化版?)で、コードのコンテキストを判断してより適切なプロパティやメソッド等を優先的に表示してくれるらしい。

つまり★が付いてるメンバが、AI が(より適切、より頻繁に使用されている等の理由で)優先的に表示したもの、ということらしい。

(記号文字である★を使うところがなんか・・・MS らしくないというか、一般の現場の発想っぽい気が・・・)

 

インテリコードは現在のところ、C#、C++、TypeScript/JavaScript、XAML のみをサポートしてるらしい(VB.NET はまだサポートしてないのね)。

 

もしもこの機能をオフにしたいと思った場合は、VS 上部のメニューの[ツール]>[オプション]を選択し、[IntelliCode]>[全般]を選択し、右側のペインで「無効」にすれば良い。

私が試したところ、上記ダイアログで値を変更しても即座には反映されず、VS を再起動する必要があったので注意してください。

xaml の設定を「無効」にして VS を再起動すると、下図のように、★付きのメンバが表示されなくなりました。

無効にしてから再度有効にした場合、VS を再起動してもすぐには★付きメンバが表示されなかったのですが、メンバ表示を数回繰り返していたら表示されるようになりました。

 

購読する
通知を受け取る対象
guest
0 Comments
Inline Feedbacks
View all comments