2010-09-01 36 views
47

thể trùng lặp:
Group files in Visual StudioLàm thế nào để nhóm các file partial class trong Solution Explorer VS2010

Vấn đề là, mà tôi muốn nhóm các file partial class một cách trong Solution Explorer , visual Studio hiển thị [+] ở phía trước tên tệp mà tôi có thể mở rộng để xem tất cả các tệp phụ thuộc khác.

Nhưng lớp học của tôi được hiển thị ở hai hàng bên dưới nhau. (xem bên dưới)

> CustomerServiceDao.cs 
> CustomerServiceDao.Query.cs 

Kết quả tôi muốn có là như thế.

+ CustomerServiceDao.cs 
    > CustomerServiceDao.Query.cs 

Có quy ước đặt tên nào mà tôi phải tuân theo để hiển thị các tệp một phần được nhóm không?

Thx trước

EDIT: Nó hoạt động. Thật tuyệt. Nhưng có bất kỳ quy ước đặt tên nào không? ví dụ. ascx thực hiện theo mặc định ...

Trả lời

68

Nếu bạn mở .csproj bạn như là một tập tin văn bản (hoặc chọn "Project Unload" từ menu ngữ cảnh trong Solution Explorer cho dự án, tiếp theo là "Sửa myproject.csproj ") bạn có thể thay đổi nó để hiển thị các tệp có liên quan trong Solution Explorer theo kiểu bạn muốn.

Hãy tìm:

<Compile Include="CustomerServiceDao.cs" /> 
<Compile Include="CustomerServiceDao.Query.cs" /> 

Và chỉnh sửa nó là như thế này:

<Compile Include="CustomerServiceDao.cs" /> 
<Compile Include="CustomerServiceDao.Query.cs"> 
    <DependentUpon>CustomerServiceDao.cs</DependentUpon> 
</Compile> 

Không có cách nào để làm điều này trực tiếp trong trình soạn thảo Visual Studio, nhưng với mô hình mở rộng mà VS2k10 cung cấp , có lẽ sẽ không lâu sau khi ai đó sản xuất ra thứ gì đó.

Cập nhật:Phiên bản mới nhất của VSCommands tuyên bố để hỗ trợ làm việc này cho bạn:

Phiên bản mới nhất hỗ trợ nhóm mặt hàng từ IDE (do đó bạn không cần phải bàn hack tập tin dự án với DependentUpon).

+1

Liên kết chính xác cho VSCommands là http://visualstudiogallery.msdn.microsoft.com/en-us/d491911d-97f3-4cf6-87b0-6a2882120acf - Tôi sẽ cập nhật câu trả lời với nó ngay sau khi tôi đã kiểm tra nếu nó thực sự works =) – Rob

+0

Điều đó thực sự tuyệt vời;) Tôi rất ấn tượng. VSCommands hoạt động như một charme. – BitKFu

+0

Tôi không thể lấy mục này làm tổ trong mục b, trong đó mục b không phải là anh chị em của a. NHƯNG NestIn được đề cập trong câu trả lời của Dao không làm điều này. – Myster

9

Bạn có thể đạt được điều này nếu bạn chỉnh sửa thủ công tệp .csproj của mình.

Chỉ cần nhấp chuột phải vào dự án của bạn, nhấn Unload Project.

Từ đó, nhấp chuột phải và nhấn Edit project.csproj

Look cho Compile yếu tố. Thêm một phần tử DependentUpon như thế này:

<Compile Include="CustomerServiceDao.cs" /> 
<Compile Include="CustomerServiceDao.Query.cs"> 
    <DependentUpon>CustomerServiceDao.cs</DependentUpon> 
</Compile> 
+0

Nó hoạt động. Thật tuyệt. Nhưng có bất kỳ quy ước đặt tên nào không? ví dụ. ascx thực hiện theo mặc định ... – BitKFu

+0

@BitKFu, Một số loại dự án thực hiện theo mặc định vì đó là cách chúng được mã hóa. Không có quy ước đặt tên nào sẽ giúp bạn ở đây, tôi sợ. Tôi vừa tìm thấy một plug-in (được đề cập trong câu trả lời của tôi), mà tuyên bố nó sẽ làm điều đó cho bạn mặc dù! =) – Rob

+0

Tôi thực sự muốn cung cấp cho cả hai bạn danh tiếng. Câu trả lời rất hay, nhưng tôi phải chọn một câu trả lời. – BitKFu

2

hãy thử sử dụng mục Nhóm/tách bằng cách cài đặt VScommands1.2

26

Nếu bạn không muốn để làm chậm bạn IDE với phần mở rộng VSCommands nặng và độc quyền, bạn có thể sử dụng phần mở rộng nhỏ NestIn để thay thế. Không thể gì ngoài việc nhóm/hủy nhóm các tệp

+0

+1 Tôi không thể nhận được VSCommands để lồng mục trong mục b nơi mục b không phải là anh chị em của a. NHƯNG NestIn, yay! ... nhưng đôi khi un-nest không hoạt động: - \ – Myster

Các vấn đề liên quan