VSに対話型ウィンドウが追加されました。しかし、Visual Studioでは、CSI.EXE Roslynプロセスの実行とは異なり、IntelliSenseと現在のプロジェクトで読み込めるようないくつかの機能が追加されています。C#インタラクティブウィンドウでの変更の追跡
このウィンドウですべてのテキストエディタの変更を追跡するVSプラグインを作成します。これは可能ですか?私が探しているのは、PreviewKeyDown/PreviewTextInput
WPFイベントに似たものです。 C#のインタラクティブウィンドウでそれらを取得することはできますか?ここで
は、私がこれまでに得た方法遠いです:ここで
var dte = Shell.Instance.GetComponent<DTE>();
foreach (Window window in dte.MainWindow.Collection)
{
if (window.Kind.ToUpper().Contains("TOOL"))
{
if (window.Caption == "C# Interactive")
{
WpfWindow wpfWindow = (WpfWindow)HwndSource.FromHwnd((IntPtr) window.HWnd).RootVisual;
for (int i = 0; i < VTH.GetChildrenCount(wpfWindow); ++i)
{
// now what?
}
}
}
}
MEH、その文書化されていない* *別の場合、文字通り 'EnvDTE Interactive'を使用のためのドキュメントはありません。 com/en-us/dotnet/api/envdte.outputwindow.dte?view = visualstudiosdk-2017 –
C#対話型ウィンドウのIWpfTextViewHostを探していますか?それはあなたのために大丈夫でしょうか? –
@SimonMourierはわかりません。具体的なコントロールが必要なのは、1)私にバッファ全体を与え、2)変更を通知することができる。基本的に私はインタラクティブウィンドウのすべての変更を追跡する必要があります。 –