36

Sử dụng Visual Studio 2010 Professional, tôi có một phương pháp ToString() trông như thế này:Newlines trong Immediate Window

public override string ToString() 
{ 
    return "something" + "\n" + "something"; 
} 

Bởi vì có rất nhiều "something" 's và mỗi là lâu, tôi muốn thấy

something 
something 

Đáng buồn thay, tôi nhìn thấy

"something\nsomething" 

có AW ay để có được những gì tôi muốn?

+0

tôi không thể tái tạo hành vi này trên VS2010 của tôi, tôi nhận được dòng mới trong cửa sổ ngay lập tức. –

+0

Có cài đặt Cửa sổ ngay lập tức mà tôi không nhìn thấy không? –

+0

Xin lỗi, tôi chỉ cần gõ tên của var cung cấp cho đầu ra chính xác, tôi nhận được cùng một hành vi như bạn với var.ToString() –

Trả lời

94

Thực tế có một cách. Bạn có thể sử dụng định dạng specifiers trong cửa sổ ngay lập tức để thay đổi định dạng của màn hình. Nếu bạn có một chuỗi có dấu trả về dòng và dòng dữ liệu trong đó ("\ r \ n"), bạn có thể thực hiện theo yêu cầu in với thông số định dạng 'không trích dẫn'.

Trong các loại cửa sổ ngay lập tức:

?MyObj.ToString(),nq 

\r\n sẽ gây ra dòng mới trong cửa sổ ngay lập tức.

Để biết thêm về định dạng specifiers xem: http://msdn.microsoft.com/en-us/library/e514eeby.aspx

+0

Cảm ơn, hoạt động tốt. Tại sao dấu hỏi ở phía trước của biến mặc dù? Nó có vẻ hoạt động tốt mà không có nó. –

+7

@Samik R - Dấu hỏi là bắt buộc trong Visual BASIC và về cơ bản bị bỏ qua trong C#. Trong BASIC, "?" là viết tắt của bảng điều khiển PRINT. –

+0

Cảm ơn bạn đã chia sẻ thông tin, nó thực sự hữu ích cho tôi! – psulek

-2

Thật không may là không có. Điều đang xảy ra ở đây là một tạo phẩm của thiết kế của các API trình gỡ lỗi.

Thành phần chịu trách nhiệm xử lý cuộc gọi ToString() là bộ đánh giá biểu thức. Đó là nguồn dữ liệu cho phần lớn các cửa sổ trình gỡ lỗi (xem, người dân địa phương, ngay lập tức, v.v ...).

Đối với mỗi cửa sổ nhưng ngay lập tức giá trị được hiển thị trên một dòng. Hiển thị chuỗi nhiều dòng trên một dòng không có ý nghĩa nhiều. Do đó bộ đánh giá biểu thức làm cho chuỗi có thể hiển thị nhiều hơn một chút bằng cách thoát các ký tự dòng mới thành một phiên bản có thể hiển thị.

Kỹ thuật này hoạt động khá tốt cho người dân địa phương và cửa sổ xem. Nhưng trong cửa sổ ngay lập tức, nơi nó có ý nghĩa hơn để hiển thị giá trị nhiều giá trị, nó có ý nghĩa ít hơn nhiều. Thật không may, bộ đánh giá biểu thức không biết ngữ cảnh của dữ liệu của nó sẽ được hiển thị và do đó hoạt động an toàn là để thoát khỏi các dòng mới.

+2

tôi đã hy vọng đối với một số loại tùy chọn Cấu hình "Thoát" có thể được tắt cho Cửa sổ Trung gian. Than ôi không có! –

+2

-1 vì giải pháp dưới đây. Giải thích tốt mặc dù. –