Tab Menu

Lấy, xử lý giá trị của Databound Controls - Asp.net

Retrieve value from databound controls Get/Retrieve value from databound textbox, label, gridview ...

Trong asp.net, thật dễ dàng để load và hiển thị một giá trị từ CSDL bằng các Databound Controls . Nhưng đường đời không êm ái bao giờ, bạn muốn lấy giá trị databound control nào đó để phục vụ cho việc xử lý bên dưới Code behind cũng không phải là chuyện dễ.

Hôm nay s chia sẽ tí kinh nghiệm về vấn đề này qua những ví dụ dưới đây. Cách dễ nhất là dùng FindControl("ID"). Đầu tiên là ví dụ lấy values của databound textbox trong Repeater.
foreach (RepeaterItem item in Repeater1.Items)
{
TextBox txt = item.FindControl("txtName") as TextBox;
Name = txt.Text;
}
Giải thích: bạn tạo một item (RepeaterItem item in Repeater1.Items) sau đó duyệt hết tất cả các item có ID là "txtName" bằng FindControl("txtName"). Trả nó về kiểu textbox (as TextBox). Và tới đây bạn có thể thao tác như một textbox bình thường.

Đây là một cách khác:
for (int i = 0; i < Repeater1.Items.Count; i++)
{
TextBox txt = Repeater1.Items[i].FindControl("txtName") as TextBox;
if (txt != null)
Name = txt.Text;
}

Tiếp theo là lấy value của một ô (cell) trong GridView.
foreach(DataGridItem item in GridView1.Items)
{
   TextBox Text1 = (TextBox)item.FindControl("txtName");
   string exValue = Text1.Text;
}
foreach (GridViewRow row in GridView1.Rows)
{
TextBox txtQuantity = (TextBox)row.Cells[indexColumn].FindControl("txtName");
string exValue = Text1.Text;
}
indexColumn : Số thứ tự của cột chứa txtName

Những cách trên chỉ lấy giá trị của databound controls xuống code-behide bên dưới xử lý. Nếu muốn xử lý xong và trả về đúng control đó thì bạn tham khảo bài viết sau:
Lấy, xử lý và thay đổi giá trị Databound Controls

Hiện có 0 comments

Post a Comment

Bạn có thể tự do cho ý kiến, thảo luận về bài viết này nhưng phải theo những điều khoản sau:
- Phải nghiêm túc, không dung tục, không spam.
- Nội dung phải liên quan đến bài viết.
- Không mang tính chất chính trị...
- Hạn chế sử dụng Ẩn danh, hãy dùng Tên/URL để thay thế.
Lưu ý : Có thể sử dụng tag HTML cơ bản trong comment: br, b, i, u, a href= ...

:)
:(
;)
:D
=))
:-/
:x
I-)
@-)
=D:
:-q
:-w
[-X
B-)
:((
:-B
:-h
:x(
:-*
~O)
@};-

About

RSS
Coming soon... :))