xin hỏi mình tạo 1 form khi gồm checkbox and textbox khi click ResetButton thì chỉ bỏ chọn check box
như vậy là sao nhỉ
các bạn giúp mình với
code của mình đây :
Tiện cho mình hỏi thêm nhé khi nhập dữ liệu từ checkbox và textbox rồi nhấn Ok Btn sau đó mình tạo thêm 1 form mới vậy thì làm sao mình có thể Get Data từ form cũ và xử lí nó trên form mới đóCode:private void ReBtn_Click(object sender, EventArgs e)// ResetButton { foreach (Control chk in this.Controls) { if (chk is CheckBox) ((CheckBox)chk).Checked = false; } foreach (Control tbx in this.Controls) { if(tbx is TextBox) ((TextBox)tbx).Text = " "; } } }
thanks !
Đã được chỉnh sửa lần cuối bởi NightMare : 09-06-2008 lúc 02:41 AM.
Trên phương diện code thì code của bạn không có gì sai.
Nếu checkbox của bạn vẫn ko đc clear thì có lẽ nó không nằm trực tiếp trên form. Bạn kiểm tra lại xem nó nằm trên GroupBox / Panel nào ko?
Nữa là đoạn code của bạn thừa mất 1 vòng for. Kéo cái if thứ 2 vào vòng for thứ nhất vẫn chạy bình thường.
Cheers!
Is the moon rising...
mình đã thử lại rồi và đã test lại nhưng có điều tình trạng vẫn như thế
bên cạnh các checkbox mình để thêm dưới là 2 textbox để người dùng nhập dữ liệu![]()
ko biết darkan có thử như vậy ko?
gõ code vào thì chỉ có checkbox reset thôi
đã thử = cách này nhưng cũng ko được
@BuiThiHa :mình phải load nhiều kiểu dữ liệu trong form1Code:if(tbx is TextBox) ((TextBox)tbx).Text = string.Empty;
từ checkbox,radiobutton,textbox để thực hiện trong form2
đã thử but not success
mong chỉ giáo thêm !
Đã được chỉnh sửa lần cuối bởi NightMare : 09-06-2008 lúc 02:00 PM.
Đến chết ^^!
Dark mà ko làm được thì đâu có nói cho bạn.
Đây là đoạn code Dark vẫn dùng để clear các controls
Visual C# Code:
{ { { Type sv_oType = sv_oControl.GetType(); { ((System.Windows.Forms.TextBox)sv_oControl).Text = ""; ((System.Windows.Forms.ComboBox)sv_oControl).SelectedIndex = -1; } } } { } } { ClearGroup(pv_grpGroupBox.Controls); }
Như Dark đã nói ở trên. Bạn kiểm tra lại xem textbox của bạn có đặt trên panel hay groupbox nào ko?
Code của bạn ko clear được chứng tỏ nó không chạy qua đoạn đó. Bạn có sửa cũng vô ích.
Nếu bạn có nhiều dữ liệu thì nên gom vào thành một mảng object sẽ tiện hơn khi truyền qua lại giữa các form.
Đã được chỉnh sửa lần cuối bởi darkan : 09-06-2008 lúc 02:51 PM.
Is the moon rising...
Thanks darkan nhé mình làm được rồi.
cho cái example nhỉ mình thấy vướng chỗ nàyNếu bạn có nhiều dữ liệu thì nên gom vào thành một mảng object sẽ tiện hơn khi truyền qua lại giữa các form.
Đại ca cho em hỏi mấy cái này là viết tắt từ những chữ gì vậy, đoán ko nổi ^^
sv_oControlHơn nữa, code của đại ca chưa chạy đúng khi có thêm một container con :PTapControls // cái này hình như là Tập Controls !??
Keep moving forward!
... Retired ...
Đoạn code này hok phải do anh viết :P.Anh chỉ dùng thôi).
Còn nó chạy không đúng khi có container con thì đúng zồi :P. Mục đích là chỉ xóa dữ liệu trên các control nhập liệu nằm trên nó thôi. Còn muốn xóa cả container con thì thêm 2 dòng nữa vào là ok hết ^^!
Is the moon rising...
Code:public void ClearGroup(System.Windows.Forms.Control.ControlCollection controls) { foreach (Control c in controls) { Type cControls = c.GetType(); switch (cControls.Name) { case "TextBox": ((TextBox)c).Text = string.Empty; break; case "CheckBox": ((CheckBox)c).Checked = false; break; case "ComboBox": ((ComboBox)c).SelectedIndex = 0; break; default: break; } if (c.Controls!=null) { ClearGroup(c.Controls); } } } private void button1_Click(object sender, EventArgs e) { ClearGroup(this.Controls); }
phần này làm bon lâu òi
còn kái phần dùng chung dữ liệu giữa các form cơ
mình muốn lấy các dữ liệu từ CheckBox và TextBox kia để xử lí trong các form khác
cụ thể là mình kiểm tra điều kiện rồi vẽ lên trong 1 form #
liệu sử dụng lưu nó lại trong 1 class riêng or sử dụng delegate đây
cách nào ổn hơn mấy bạn chỉ giùm hen
thanks pác darkan
Đã được chỉnh sửa lần cuối bởi NightMare : 06-08-2008 lúc 11:20 PM.