Thắc mắc chuyển form - winform c#

E có 1 form login và 1 button là đăng nhập, khi click vào button đăng nhập thì sẽ sang form fTab với sự kiện btnlogin_click và em viết bên form login như sau.

fTab f=new fTab();
This.Hide();
f.showdialog();
This.show();

Nhưng mà em phát hiện ra là kể cả không có hoặc xóa mấy dòng trên đi thì vẫn có thể chuyển sang form fTab được, vậy có anh chị nào có thể giải thích giúp em hoặc là đã ai gặp trường hợp này chưa ạ?

Thật sự thì mình đọc đi đọc lại đến 3 lần mà vẫn mơ hồ về vấn đề bạn gặp phải, không hiểu bạn gặp phải vấn đề gì luôn.
Ý bạn là cho fTab ẩn đi và không thể chuyển qua nó? Hay chỉ cho thao tác trên fTab mà không cho thao tác trên form chính?

1 Like

Tức là từ login chuyển qua fTab mà không cần:

fTab f=new fTab();
f.showdialog;

Mà chỉ có:

private void btnlogin_click(object sender, eventArgs e)
{
     Trống không
}

nhưng vẫn chuyển được qua ftab

Muốn thực hiện thì phải gọi hàm chứ! Bạn muốn trống không mà nó thực hiện thì bạn thử tạo dự án trống rồi để nó tự tạo form, tự login luôn cho bạn? LẬP TRÌNH đấy!

1 Like

Thì em thắc mắc là tại sao ko có gì trong hàm mà cũng chuyển đc form ấy ạ

Xin lỗi vì hiểu sai ý bạn, nhưng bạn cũng nên chú ý mô tả đầy đủ, rõ ràng.

Phải có gì chứ, bạn đẻ trống không => fTab chưa tồn tại, lấy gì để chuyển qua chứ?
Khả năng là bạn chạy lại tập tin cũ đã được biên dịch trước đó.

2 Likes

Cũng có thể như anh nói, nhưng bên fTab em đã làm giao diện rồi đấy chứ

Có giao hay không, không cần biết, nhưng bạn chưa tạo mới nó, lấy gì để nó hiện.

fTab f = new fTab(); // tạo mới

Nhưng nếu để trống không => không có dòng này thì lấy đâu có form fTab mà hiện???

2 Likes

Cũng có thể như anh nói, nhưng bên fTab em đã làm giao diện rồi đấy chứ

Cậu nên clean project và rebuild lại, sau đó thực hiện verify lại. Việc làm việc trên giả thiết sẽ rất tốn thời gian của tất cả :sweat_smile:

4 Likes

Cảm ơn mọi người đã bỏ thời gian ra giải đáp.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?