Visual Studio: Làm cách nào để hiển thị Quá tải trong IntelliSense?


251

Khi mã đã được viết, cách duy nhất tôi biết để xem tình trạng quá tải cho một phương thức là thực sự chỉnh sửa phương thức bằng cách xóa Dấu ngoặc đơn ()và mở lại chúng.

Có một phím tắt mà tôi có thể nhấn để kích hoạt cái này thay vì phải chỉnh sửa các tập tin của mình không?

Để biết ví dụ, vui lòng tham khảo ảnh chụp màn hình Quá tải ShowDialog bên dưới:

Quá tải ShowDialog1


6
Điều gì đã từng xảy ra với các mũi tên lên xuống cũ tốt?
Zapnologica

3
@Zapnologica: Mũi tên Lên và Xuống vẫn tồn tại, nhưng hộp IntelliSense cần được kích hoạt và mở trước khi những mũi tên đó có thể được sử dụng để cuộn qua các tùy chọn quá tải. Câu hỏi này là về cách mở hộp IntelliSense để mở.
jp2code 23/2/2016

3
Làm thế nào bạn có thể làm cho nó mở theo mặc định, kiểm soát không gian so với không gian thay đổi kiểm soát
Zapnologica

6
@Zapnologica: Tôi sử dụng chuỗi Control + Shift + Space , giống như kết hợp Control + Alt + Delete kiểu cũ .
jp2code

Trong VS2012, nó được sử dụng để mở theo mặc định khi tôi nhập dấu ngoặc đơn mở sau tên hàm, nhưng dường như nó không còn làm điều đó nữa kể từ khi tôi cài đặt ReSharper. Thay vào đó, nó đưa ra một menu thả xuống của các biến / hàm có thể để điền vào đối số đầu tiên. Khá khó chịu.
Nyerguds

Câu trả lời:


394

Hãy thử phím tắt Ctrl- Shift- Space. Điều này tương ứng với Edit.ParameterInfo, trong trường hợp bạn đã thay đổi mặc định.

Thí dụ:

ảnh chụp màn hình mô tả, bởi jp2code


41
Ít nhất là trong VS 2008, dường như con trỏ của bạn phải nằm trong ngoặc đơn để phím tắt này hoạt động. Ngoài ra, cảm ơn bạn đã đăng bài, tôi không biết điều này tồn tại!
kiswa

2
Bây giờ nếu chỉ có một cách để làm điều này xảy ra theo mặc định.
Mike Lowery

Trong VS2017, lời nguyền cũng phải nằm trong dấu ngoặc đơn.
Mohammed Noureldin

Trong vscode, nó cũng hoạt động và bạn có thể sử dụng Alt + Uphoặc Alt + Downđể điều hướng giữa chúng.
Juan De la Cruz

60

Ctrl+ Shift+ Spacehiển thị Edit.ParameterInfophương thức đã chọn và theo phương pháp đã chọn, ý tôi là dấu mũ phải nằm trong dấu ngoặc đơn của phương thức.

Dưới đây là Poster Keybinding của Visual Studio 2010 .

Và đối với những người vẫn đang sử dụng 2008 .


3
Whoa, của bạn bây giờ trông quyến rũ hơn của tôi với các thẻ bàn phím ưa thích của bạn! Tôi không thể để điều này xảy ra!
aardvarkk

+1 và +1 khác cho Neil nếu anh ấy sẽ cho tôi biết làm thế nào để làm điều đó ở đây.
jp2code

11
Bạn sử dụng thẻ <kbd> </ kbd>
Neil Knight

Đối với tôi trên VS2017, điều này dường như là: Ctrl + Shift + Space, Space
pate

50

Chỉ được thử nghiệm trên Visual Studio 2010.

Đặt con trỏ của bạn trong (), nhấn Ctrl+ K, sau đó P.

Bây giờ điều hướng bằng cách nhấn các phím  ↑  /  ↓  mũi tên.


Có lẽ tôi đang làm gì đó sai, nhưng tôi không thể làm điều này hoạt động trong VS2008 hoặc VS2010.
jp2code

1
Đó là một phím tắt VS2010 (không chắc chắn về năm 2008) - nhưng có thể bạn đã thay đổi nó hoặc một công cụ bạn đã cài đặt chiếm quyền điều khiển.
Alex Tại Paris

Đây là những gì tôi đang tìm kiếm. Một cái gì đó tương tự như Ctrl + Q trong IntelliJIdea / Android Studio.
DaMachk

19

Ràng buộc khóa mặc định cho điều này là Ctrl+ Shift+ Space. Lệnh Visual Studio nằm bên dưới là Edit.ParameterInfo.

Nếu tính năng khóa phím tiêu chuẩn không phù hợp với bạn (có thể trong một số cấu hình) thì bạn có thể thay đổi nó thông qua trang tùy chọn bàn phím

  • Công cụ -> Tùy chọn
  • Bàn phím
  • Nhập vào Edit.ParameterInfo
  • Thay đổi phím tắt
  • Lượt truy cập

1
Rất đẹp! Đối với +1 khác, bạn có thể cho tôi biết cách tạo Ctrl+Shift+Spaceđồ họa đó không?
jp2code

8
@ jp2code để tạo đồ họa sử dụng các <kbd>thẻ. Ví dụ<kbd>Shift</kbd>
JaredPar

3
@ jp2code, nếu bạn mở trong chế độ chỉnh sửa, bạn cũng có thể thấy các thẻ được sử dụng.
radbyx

Trong Visual Studio 2015 nếu điều này không hiệu quả với bạn, hãy đảm bảo bạn đã thử điều này: stackoverflow.com/a/31087682/68905 Tôi phải làm điều này để nó hoạt động.
jakejgordon

10

Nó xảy ra rằng không có phương pháp nào ở trên hoạt động. Ràng buộc khóa là phù hợp, nhưng mẹo công cụ đơn giản là không hiển thị trong mọi trường hợp, không phải là trợ giúp hoàn thành hoặc theo yêu cầu.

Để khắc phục, chỉ cần truy cập Công cụ \ Trình soạn thảo văn bản \ C # (hoặc tất cả các ngôn ngữ) và kiểm tra ' Thông tin tham số '. Bây giờ nó sẽ làm việc


7

Câu hỏi tuyệt vời; Tôi gặp vấn đề tương tự. Hóa ra thực sự có một phím tắt để hiển thị danh sách này: Ctrl + Shift + Space (một biến thể của phím tắt IntelliSense cơ bản của Ctrl + Space).


5
  • Lệnh Edit.ParameterInfo(được ánh xạ tới Ctrl+ Shift+ Spacetheo mặc định) sẽ hiển thị chú giải công cụ quá tải nếu nó được gọi khi con trỏ nằm trong dấu ngoặc tham số của lệnh gọi phương thức.

  • Lệnh Edit.QuickInfo(được ánh xạ tới Ctrl+ KCtrl+ Itheo mặc định) sẽ hiển thị chú giải công cụ mà bạn thấy nếu bạn di chuyển qua vị trí con trỏ.


2

Thỉnh thoảng các đề xuất ở trên ngừng hoạt động, nếu tôi khởi động lại Visual Studio thì chúng vẫn bắt đầu hoạt động trở lại.


1

Tôi biết đây là một bài viết cũ, nhưng đối với những người mới như tôi vẫn truy cập trang này thì điều này có thể hữu ích. Khi bạn di chuột vào một phương thức, bạn sẽ nhận được một hộp thông tin không thể nhấp trong khi nếu bạn chỉ viết một dấu phẩy trong ngoặc đơn phương thức, IntelliSense sẽ cung cấp cho bạn hộp thông tin yêu thích với các mũi tên có thể nhấp.


Đó không phải là điều tương tự. Đó là IntelliSense của những giá trị bạn có thể đặt vào. Không phải cửa sổ quá tải. Vì vậy, bạn chỉ có thể thực hiện Ctrl + Space
Mastro

0

Của tôi xuất hiện trong VS2010 sau khi viết dấu ngoặc đơn đầu tiên ..

vì vậy, prams. Thêm (

Sau khi làm một cái gì đó như thế, hộp với mũi tên lên và xuống xuất hiện.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.