c#代码自动修改解决方案下任意文件实例
时间:2023-01-31 07:27:10
命名空间
using EnvDTE;
using EnvDTE80;
private DTE2 _applicationObject;
public void AutoAddControl(插件 v_form1)
{
//得到当前文件的名称
string v_pathfile = _applicationObject.ActiveDocument.FullName;
//打开文件 "Form1.Designer.cs"
if (!(v_pathfile.EndsWith(".cs")))
{
MessageBox.Show("当前文件不是.cs文件");
return;
}
v_pathfile = System.IO.Path.ChangeExtension(v_pathfile, ".Designer.cs");
_applicationObject.ItemOperations.OpenFile(v_pathfile);
string v_file = System.IO.Path.GetFileName(v_pathfile);
_applicationObject.Windows.Item(v_file).Activate();
//修改文件内容 "Form1.Designer.cs"
Document v_doc = _applicationObject.ActiveDocument;
TextSelection selection = (TextSelection)_applicationObject.ActiveDocument.Selection;
selection.SelectAll();
string v_text = selection.Text;
v_text = v_form1.ChangeDoc1(v_text);
selection.SelectAll();
selection.Text = "";
selection.Insert(v_text);
//保存文件 "Form1.Designer.cs"
_applicationObject.ActiveDocument.Save();
_applicationObject.ExecuteCommand("Window.CloseDocumentWindow");
//vsSaveChangesYes保存并关闭当前活动窗体
//_applicationObject.ActiveWindow.Close(vsSaveChanges.vsSaveChangesYes);
}