Tôi tìm thấy một số mã nguồn trong chủ đề này được đăng bởi Rex Logan ở đây trên SO:Setting vị trí của một cửa sổ điều khiển mở trong một WinForms App
... cũng có một số mã rất thú vị đăng tải trong cùng một chủ đề này bởi Foredecker, nhưng nó không đầy đủ và phức tạp: Tôi không đủ về cơ sở Trace để biết cách thực hiện đầy đủ ...
Tôi có thể sử dụng mã Console này Rex (vui lòng) đăng thành công trong ứng dụng WinForms để đăng nhập các sự kiện khác nhau và để thúc đẩy messa ges vào đó là hữu ích trong gỡ lỗi; Tôi cũng có thể xóa nó khỏi mã ứng dụng.
Điều tôi dường như không thể làm là đặt vị trí màn hình của Cửa sổ Bảng điều khiển một cách đáng tin cậy khi tôi mở Cửa sổ Bảng điều khiển (trong sự kiện tải Biểu mẫu Chính). Tôi nhận biên dịch ngăn chặn lỗi System.ArgumentOutOfRangeException nếu tôi cố gắng thiết lập WindowLeft hoặc WindowTop tính như thế này:
Các vị trí cửa sổ phải được thiết lập như rằng kích thước cửa sổ hiện hành phù hợp với trong bộ đệm của giao diện điều khiển, và số không được âm. Tên Parameter: trái Giá trị thực tế là #
tôi có thể, tuy nhiên, để thiết lập các thuộc WindowWidth và WindowHeight.
Tôi đã cố gắng di chuyển mã đó kích hoạt các địa điểm khác nhau điều khiển bao gồm:
- trong Program.cs nộp trước MainForm là 'chạy
- trước và sau khi cuộc gọi đến' InitializeComponent() trong các MainForm ctor
- trong trường hợp Form tải
- trong Mẫu Thể hiện sự kiện
các Conso le đã được kích hoạt ở tất cả những nơi này trong mã, nhưng không có sự thay đổi trong việc chuyển đổi dường như ngẫu nhiên xung quanh nơi ở góc phần tư phía trên bên trái của màn hình nó xuất hiện.
Khi cửa sổ Bảng điều khiển mở ra có vẻ khác nhau một cách ngẫu nhiên (Biểu mẫu chính luôn được khởi tạo ở cùng một vị trí trên màn hình).
Cảm ơn bạn, RRUZ; Tôi đã có thể kết hợp mã của bạn vào mã cơ sở được đăng bởi Rex Logan và thiết lập cửa sổ Console nơi tôi muốn. Tôi chỉ tò mò: tại sao cuộc gọi đến 'Console.Read()?Đây là một ứng dụng WinForms tôi đang chạy, và tôi đang sử dụng Console chỉ cho "đăng nhập": đây có phải là một điều tiêu chuẩn để làm khi khởi tạo một Console từ bên trong một ứng dụng WinForm? Rất cám ơn! tốt nhất, Bill – BillW
@BillW - nó ở đó để cửa sổ vẫn hiển thị cho đến khi bạn nhấn 'return'. Ví dụ không làm gì sau khi thiết lập vị trí cửa sổ như vậy sẽ chỉ đơn giản là đóng và bạn sẽ không thấy rằng nó có vị trí đúng. – ChrisF
Xin chào ChrisF, Cảm ơn câu trả lời của bạn! fyi: Sử dụng mã được đăng bởi Rex Logan mà tôi đã liên kết trong yêu cầu ban đầu của tôi, cửa sổ Bảng điều khiển vẫn tồn tại mà không cần bất kỳ cuộc gọi nào đến Console.Read(). tốt nhất, Bill – BillW