Từ 1 tới 10 trên tổng số 10 kết quả

Đề tài: Enable button khi có dữ liệu trong các textbox như thế nào ?

  1. #1
    Ngày gia nhập
    05 2011
    Bài viết
    78

    Mặc định Enable button khi có dữ liệu trong các textbox như thế nào ?




    FormLoad: button1.enabled = false;

    Làm sao để bắt người dùng nhập hết 4 textbox thì button1 mới hiện lên?

    Mình đã sử dụng sự kiện Leave (Giống sự kiện lostfocus()) cho textbox3 kèm điều kiện các textbox không được null, nhưng không hay lắm bới vì nếu người dùng nhập từ textbox4 lên 1 thì phải click vào textbox4 để leave.
    Mọi người giúp mình với nha!

  2. #2
    Ngày gia nhập
    06 2011
    Bài viết
    121

    Trích dẫn Nguyên bản được gửi bởi hu-xeko Xem bài viết



    FormLoad: button1.enabled = false;

    Làm sao để bắt người dùng nhập hết 4 textbox thì button1 mới hiện lên?

    Mình đã sử dụng sự kiện Leave (Giống sự kiện lostfocus()) cho textbox3 kèm điều kiện các textbox không được null, nhưng không hay lắm bới vì nếu người dùng nhập từ textbox4 lên 1 thì phải click vào textbox4 để leave.
    Mọi người giúp mình với nha!
    bạn thử dùng sự kiện keypress của textbox xem
    P/s: nhằm, là sự kiện TextChanged mới đúng
    Đã được chỉnh sửa lần cuối bởi chitviv : 20-10-2011 lúc 07:50 PM.

  3. #3
    Ngày gia nhập
    02 2011
    Nơi ở
    Bảo Lộc, Vietnam
    Bài viết
    68

    dùng sự kiện TextChanged cho cả 4 cái textBox nếu mà Text của 4 cái đều lớn hơn 0 (textBox.Text.Length>0 == true) thì button.Visible = true.

    Hoặc:
    khai báo 1 phương thức xử lý các sự kiện TextChanged của các textBox trong Form
    Code:
       void XuLyTextChange(object sender, EventArgs e)
             {          
                 if (textBox1.Text.Length > 0 == true && textBox2.Text.Length > 0 == true && textBox3.Text.Length > 0 == true)
                 {
                     button1.Visible = true;
                 }
             }
    bên Form1.Designer.cs
    Code:
    this.textBox1.TextChanged += new System.EventHandler(this.XuLyTextChange);
    this.textBox2.TextChanged += new System.EventHandler(this.XuLyTextChange);
    this.textBox3.TextChanged += new System.EventHandler(this.XuLyTextChange);
    Đã được chỉnh sửa lần cuối bởi lequ0ch0anglt : 21-10-2011 lúc 07:29 AM.

  4. #4
    Ngày gia nhập
    01 2011
    Nơi ở
    Hà Nội
    Bài viết
    188

    Nếu người dùng nhập toàn dấu cách thì sao nhỉ?

  5. #5
    Ngày gia nhập
    06 2011
    Bài viết
    121

    Trích dẫn Nguyên bản được gửi bởi vuthanhtrung90 Xem bài viết
    Nếu người dùng nhập toàn dấu cách thì sao nhỉ?
    Nếu vậy thì em nghĩ dùng trim để cắt nó đi

  6. #6
    Ngày gia nhập
    02 2011
    Nơi ở
    Bảo Lộc, Vietnam
    Bài viết
    68

    Mặc định Enable button khi có dữ liệu trong các textbox như thế nào ?

    Trim() chĩ cắt khoảng trắng 2 bên hay cắt toàn bộ thế mấy huynh

  7. #7
    Ngày gia nhập
    05 2011
    Bài viết
    78

    Nếu người dùng nhập toàn dấu cách thì sao nhỉ?
    Cái này thì mình đã có hàm xử lý chuổi rồi.

    dùng sự kiện TextChanged cho cả 4 cái textBox nếu mà Text của 4 cái đều lớn hơn 1 (textBox.Text.Length>1 == true) thì button.Víible = true.
    Làm thế này đồng nghĩa với làm 4 sự kiện Leave cho 4 textbox hở bạn ? (Trong đó kèm them điều kiện khi leave + 4 textbox không được rỗng ???)

  8. #8
    Ngày gia nhập
    03 2011
    Bài viết
    467

    Sao khong làm là khi đưa chuột vào cái button thì kiểm tra 4 cái textbox kia:|
    bongda24h.tv

  9. #9
    Ngày gia nhập
    02 2011
    Nơi ở
    Bảo Lộc, Vietnam
    Bài viết
    68

    có thể gộp 4 sự kiện vào 1 phương thức để xử lý, còn nếu rãnh có thể làm cho từng sự kiện .

    Cái này mình làm với sự kiện TextChanged, ko dùng Leave thấy vẫn ok.

    cái này bên Form1.Designer.cs
    (thêm 3 cái vào 3 sự kiện của textBox)
    Code:
    this.textBox3.TextChanged += new System.EventHandler(this.XuLyTextChange);
    Code:
    this.textBox2.TextChanged += new System.EventHandler(this.XuLyTextChange);
    Code:
    this.textBox1.TextChanged += new System.EventHandler(this.XuLyTextChange);
    Còn cái này bên Form1
    Code:
     public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();           
            }
             void XuLyTextChange(object sender, EventArgs e)
             {
                 if (textBox1.Text.Length > 0 == true && textBox2.Text.Length > 0 == true && textBox3.Text.Length > 0 == true)
                 {
                     button1.Visible = true;
                 }
                 else
                 {
                     button1.Visible = false;
                 }
             }
        }

    Đã được chỉnh sửa lần cuối bởi lequ0ch0anglt : 21-10-2011 lúc 07:33 AM.

  10. #10
    Ngày gia nhập
    05 2011
    Bài viết
    78

    Mình sử dụng cách của bạn lequ0ch0anglt hướng dẫn (Xử lý textchange) cũng được. Cám ơn các bạn đã giúp đỡ.

Các đề tài tương tự

  1. Graphic Cách tạo 1 Textbox và 1 Button trong cùng 1 ô của Datagrid?
    Gửi bởi hikagu2000 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 28-01-2012, 11:43 PM
  2. Enable một cell trong datagridview như thế nào?
    Gửi bởi philipdn trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 11-10-2011, 07:53 AM
  3. Enable button lại sau khi đã Disable
    Gửi bởi 0nly trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 13-05-2011, 05:08 PM
  4. Sử dụng enable/disable button với lập trình C#
    Gửi bởi anhtai063 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 11-01-2011, 11:53 AM
  5. [VC++] Enable/Disable menu hoặc button trên toolbar
    Gửi bởi choa trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 7
    Bài viết cuối: 05-03-2008, 09:48 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn