会社で内部的に使用されているカスタム スクリプト言語用に Visual Studio 言語サービスを実装していますが、TypeAndMemberDropdownBarsのサブクラスとして実装されたナビゲーション バーで問題が発生しました。サブクラスは、LanguageService サブクラスのLanguageService.CreateDropDownHelperメソッドによって作成されます。
OnSynchronizeDropdownsメソッドでは、ファイルで定義されている型を反復処理し、渡された配列にDropDownMembersを追加して、ナビゲーション バーを埋めています。私が見ている問題は、配列の最初の項目が複製され、アクセスできないコードによってリストの最後に配置されていることです。この余分な項目は、選択すると正しく動作しません (何も起こりません) が、他の問題は発生していないようです。リスト内の残りの項目は正常に機能します。さらに、これはタイプ ドロップダウン ボックスでのみ発生するようです。メンバー ドロップダウン ボックスでは、この動作は表示されません。
他の誰かがこの問題を見て解決し、何らかの支援を提供できることを願っています。ありがとう!