как описано здесь http://davidhayden.com/blog/dave/archive/2005/11/05/2556.aspx можно настроить шаблон элемента проекта.Шаблон проекта: где Visual Studio определяет зависимости?
Но на данный момент я просто попытаюсь понять, как это работает. Например, я расстегнула файл UserControl и в usercontrol.vstemplate я не могу видеть, как mycontrol.designer.cs зависит от mycontrol.cs, как это появляется в файле проекта, как:
<DependentUpon>mycontrol.cs</DependentUpon>
так что любая идея?
Обновление: может ли эта зависимость не указываться где-нибудь в шаблоне типа проекта? Это было бы более умно, чем полагаться на эвристическое правило IDE, которое довольно ограничено, поскольку оно может распознавать только .Designer.cs, а не, например, .MyCustom.cs.
usercontrol.vstemplate:
<?xml version="1.0" encoding="utf-8"?>
<VSTemplate Version="3.0.0" Type="Item" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name Package="{FAE04EC1-301F-11d3-BF4B-00C04F79EFBC}" ID="2295" />
<Description Package="{FAE04EC1-301F-11d3-BF4B-00C04F79EFBC}" ID="2296" />
<Icon Package="{FAE04EC1-301F-11d3-BF4B-00C04F79EFBC}" ID="4532" />
<TemplateID>Microsoft.CSharp.WindowsFormsUserControl</TemplateID>
<ProjectType>CSharp</ProjectType>
<SortOrder>94</SortOrder>
<RequiredFrameworkVersion>2.0</RequiredFrameworkVersion>
<NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp>
<DefaultName>UserControl.cs</DefaultName>
</TemplateData>
<TemplateContent>
<References>
<Reference>
<Assembly>System</Assembly>
</Reference>
<Reference>
<Assembly>System.Data</Assembly>
</Reference>
<Reference>
<Assembly>System.Drawing</Assembly>
</Reference>
<Reference>
<Assembly>System.Windows.Forms</Assembly>
</Reference>
<Reference>
<Assembly>System.Xml</Assembly>
</Reference>
</References>
<ProjectItem ReplaceParameters="true" SubType="UserControl">UserControl.cs</ProjectItem>
<ProjectItem ReplaceParameters="true">UserControl.Designer.cs</ProjectItem>
</TemplateContent>
</VSTemplate>
Вручную добавление тега в данный момент я делаю :( – user310291
Да, мне тоже показалось интересным. Но я часто переименовываю файлы (у меня есть один класс на файл и сохранить имена одинаковыми). Мне пришлось выгрузить проект, сменить ссылки, а затем загрузить проект каждый раз, когда я реорганизовал имя класса. Это быстро стало слишком много работать, чтобы получить более красивое дерево файлов. – Stefan