Document.Kind Property
Gets a GUID string indicating the kind or type of the object.
Namespace: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Syntax
'Declaration
ReadOnly Property Kind As String
'Usage
Dim instance As Document
Dim value As String
value = instance.Kind
string Kind { get; }
property String^ Kind {
String^ get ();
}
function get Kind () : String
Property Value
Type: System.String
A GUID string indicating the kind or type of object.
Remarks
Environment extensions must provide uniquely defined type strings. This information should be available in each tool or language's type library or documentation.
Examples
public void CodeExample(DTE2 dte, AddIn addin)
{
try
{ // Before running, create two text files named "TextFile1.txt"
// and "TextFile2.txt", include them in your solution,
// and then open them. Notice changes when code executes.
Document doc, doc2;
string msg = "";
string msg2 = "";
if (dte.Documents.Count > 0)
{
doc = dte.Documents.Item("TextFile1.txt");
// Find specified text.
if (doc.MarkText("text to find", 0))
{
msg += "(1) The text was found!\n"; //MessageBox.Show("The text was found");
// Delete the bookmark created by MarkText.
doc.ClearBookmarks();
}
if (doc.ReplaceText("text to find", "was replaced by this", 0))
msg += "(2) It [was replaced by this].\n";
if (doc.Undo())
msg += "(3) The ReplaceText method has been undone.\n";
if (doc.Redo())
msg += "(4) The ReplaceText method had been redone.\n";
// This will bring the other document to the foreground.
doc2 = doc.Collection.Item("TextFile2.txt");
doc2.Activate();
// Have these documents been saved?
foreach (Document dc in dte.Documents)
{
if (dc.Saved) msg += dc.Name + " has been saved.\n";
}
MessageBox.Show(msg, "Example Output");
// Access the application object.
msg2 += doc2.DTE.Name + " is the application object.\n";
// Show the Guid for the document.
msg2 += doc2.Kind + " is the Guid for this document.\n";
// Show the language used author the code.
msg2 += doc2.Language + " is the language used in this document.\n";
// Show the document's name.
msg2 += doc2.Name + " is the name of this document.\n";
// Get the projectitem associated with this document.
msg2 += doc2.ProjectItem.Name + " is the ProjectItem associated with this document.\n";
// Show the document type.
msg2 += doc2.Type + " is the type of document.\n";
foreach (Window win in doc2.Windows)
{
msg2 += win.Caption + " is a window.\n";
}
MessageBox.Show(msg2, "Example Output");
}
else MessageBox.Show("Sample not setup properly.");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
Other Resources
How to: Compile and Run the Automation Object Model Code Examples