[Bài 06] - Textbox trong C#


Chào các bạn!
Hôm nay mình xin giới thiệu với các bạn một Control thông dụng của lập trình Winform C#, đó là Textbox


GIỚI THIỆU




Chức năng chính: Textbox chủ yếu là để nhập dữ liệu đầu vào, ngoài ra còn có thể dùng để xuất dữ liệu. Các ô tài khoản mật khẩu trên mạng xã hội, các ô nhập thông tin trong phần mềm, các ô lưu tên cho highscore khi chơi game, chúng ta có thể thấy textbox ở khắp mọi ứng dụng hiện nay.
Chúng ta hãy cùng xem có thể làm gì với một textbox nhé


THUỘC TÍNH CỦA TEXTBOX

Cũng giống như ButtonLabel, Textbox cũng có những thuộc tính gần giống với thuộc tính của 2 control mà ta đã được học qua. Dưới đây là bảng những thuộc tính thông dụng nhất của textbox:
Các thuộc tính cơ bản của Textbox

Tương tự như các đối tượng trước ta cũng có thể thay đổi thuộc tính của Textbox thông qua code.
VD:
//Lấy dữ liệu từ textbox
string var;
var = txtBox1.Text;

//Thay đổi thuộc tính
Texbox1.text = "abc"; Textbox1.Enabled = true;...

  • Chức năng AutoComplete của Textbox: Các ban tham khảo bài viết của mình tại đây

  • Thay đổi chiều cao (Height) của Textbox: Ta có nhiều cách để làm việc này. 
  - Thiết lập thuộc tính Multiline cho textbox thành true, bây giờ Textbox sẽ gõ được nhiều dòng (xuống dòng bằng phím Enter) và kèm theo đó ta có thể thay đổi kích thước Width, Height của Textbox tùy ý trên giao diện Form
  - Thiết lập Font Size của Textbox to lên
  - Thiết lập thuộc tính MinimumSize của Textbox
  - Thay đổi trong Form.Designer.cs với các thuộc tính sau:
this.textBox2.AutoSize = false;

//Sau đó thiết đặt Size bất kì mà bạn muốn

this.textBox2.Size = new System.Drawing.Size(142, 27);

SỰ KIỆN CỦA TEXTBOX

 

Cũng giống như button, để thêm sự kiện cho texbox thì chỉ cẩn nháy đúp chuột vào tên sự kiện cần thêm vào là xong!Một số sự kiện thường dùng:- TextChanged: sự kiện xẩy ra khi chữ trong textbox thay đổi- KeyUp: sự kiện khi đang gõ chữ trong textbox (bắt đầu ấn nút). Ứng dụng rất lơn. VD: khi ấn Enter thì chuyển chữ trong textbox vào một biến chẳng hạn- Ngoài ra còn có KeyDown, KeyPress,..cũng có chức năng gần tương tự...- MouseHover, MouseLeave tương tự phần button


Ở đây mình hướng dẫn các bạn 1 số chi tiết nhỏ như:
 -  Thêm dòng mới vào Texbox:
textBox1.Text += "your text" + "\r\n";

//hoặc
 
textBox1.Text += "your text" + Environment.NewLine;

- Lấy giá trị kiểu số (integer, float,..) từ Textbox: Ta dùng phương thức Parse:
int i;
i = int.Parse (textBox1.Text);

//hoặc

float  i;
i = float.Parse (textBox1.Text);
 
Trên là những gì cơ bản về Textbox, các bạn nào muốn tìm hiểu thêm có thể truy cập MSDN để tìm hiểu thêm nhé :D
Như thường lệ là một số đoạn code để các bạn đoán kết quả nhé:

private void txtBox1_KeyDown(object sender, KeysEventArgs e)
{
         if(e.KeyCode = Keys.Enter)
         {
         MessageBox.Show("Đang đăng nhập!");
         }
         if(e.KeyCode == Keys.CapsLock)
         {
          MessageBox.Show("Kiểm tra lại CapsLock");
         }
}



private void txtBox1_TextChanged(object sender, EventArgs e)
{
          lbl1.Text = txtBox1.Text;
}

Và đặc biệt với em này :v
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (System.Text.RegularExpressions.Regex.IsMatch(textBox1.Text, "  ^ [0-9]"))
            {
                textBox1.Text = "";
            }
        }
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && (e.KeyChar != '.'))
            {
                e.Handled = true;
            }
        }
    }
}

TỔNG KẾT
Textbox cung cấp cho người dùng một công cụ đắc lực để nhập vào từ bàn phím hoặc các thiết bị input khác. Hầu hết các chương trình hiện nay từ phần mềm tới game đều sử dụng textbox vào nhiều mục đích khác nhau

Chào các bạn, chúc các bạn học tốt. Bài sau mình sẽ đưa các bạn đến với project nho nhỏ đâu tiên nhé :D


Post a Comment

Bạn ơi hướng dẫn mình cách lấy giá trị từ 2 ô textbox nhập từ bàn phím sau đó cho kết quả vào ô textbox thứ 3 được không? Giá trị ô thứ 3 là kết quả cộng trừ... Mình xem hướng dẫn của bạn rồi nhưng vẫn ko làm được. Cảm ơn bạn!

Bạn muốn khi nhập dữ liệu vào 2 textbox thì textbox thứ 3 cập nhật kết quả ngay hay là phải nhấn một button nào đó rồi mới tính toán cập nhật kết quả?

[facebook][blogger]

Contact Form

Name

Email *

Message *

Powered by Blogger.
Javascript DisablePlease Enable Javascript To See All Widget