वीएस में ट्रैकिंग परिवर्तन अब एक इंटरैक्टिव विंडो के साथ आता है, लेकिन कच्चे सीएसआई.एक्सई रोज़लीन प्रक्रिया को चलाने के विपरीत, विजुअल स्टूडियो इंटेलिसेन्स और कुछ अन्य विशेषताओं को जोड़ता है जैसे वर्तमान प्रोजेक्ट में लोड करने में सक्षम होना।सी # इंटरैक्टिव विंडो
मैं एक वीएस प्लग-इन लिखना चाहता हूं जो इस विंडो में सभी टेक्स्ट एडिटर परिवर्तनों को ट्रैक करता है। क्या यह संभव है? जो मैं खोज रहा हूं वह PreviewKeyDown/PreviewTextInput
डब्ल्यूपीएफ घटनाओं जैसा कुछ है। क्या मैं उन्हें सी # इंटरैक्टिव विंडो पर प्राप्त कर सकता हूं और यदि ऐसा है, तो कैसे?
यहाँ कितनी दूर मैं अब तक मिल गया है:
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?
}
}
}
}
मेह, * इसके अनियंत्रित * का एक अन्य मामला, सचमुच' एनवीडीटीई इंटरएक्टिव 'का उपयोग करने के लिए कोई दस्तावेज नहीं है: https://docs.microsoft। com/en-us/dotnet/api/envdte.outputwindow.dte? view = visualstudiosdk-2017 –
क्या आप सी # इंटरैक्टिव विंडो के IWpfTextViewHost की तलाश में हैं? क्या यह आपके लिए ठीक रहेगा? –
@SimonMourier निश्चित नहीं है। मुझे एक ठोस नियंत्रण की आवश्यकता है जो 1) मुझे अपना पूरा बफर दे सकता है और 2) किसी भी बदलाव पर सूचित करें। मूल रूप से मुझे इंटरैक्टिव विंडो में हर बदलाव को ट्रैक करने की आवश्यकता है। –