How to reload or refresh the Windows Form into original state? i have used this.Refresh();,this.Invalidate();,form.Refresh(),form.Invalidate()
private void AdduserBtn_Click_1(object sender, EventArgs e)
{
UserManagement obj = new UserManagement ();
obj.CourseCategoryId = (int) CourseRegCbox.SelectedValue;
obj.IDNumber = IDNumberTbox.Text;
obj.Password = PasswordRegTbox.Text;
obj.FName = FnameRegTbox.Text;
obj.LName = LnameRegTbox.Text;
obj.Gender = GenderTbox.Text;
obj.Email = EmailRegTbox.Text;
obj.PhoneNumber = PhonenumberRegTbox.Text;
obj.Address = AddressRegTbox.Text;
if ( UserManagement != null && UserManagement.Id > 0 )
{
obj.Id = UserManagement.Id;
if ( UserManagement.UserInfo_Update (obj) > 0 )
{
MessageBox.Show ("Record Succesfully Updated!");
UserInfoForm form = new UserInfoForm ();
form.Refresh ();
}
else
{
MessageBox.Show ("An error occured!");
}
}
else
{
if ( UserManagement.UserInfo_Insert (obj) > 0 )
{
MessageBox.Show ("Record Succesfully Added!");
UserInfoForm form = new UserInfoForm ();
form.Refresh ();
}
else
{
MessageBox.Show ("An error occured!");
}
}
}
I just want to reload the form into original state once the data properly save or updated.
You can use the Form. Invalidate(); or Form. Refresh(); methods.
To refresh the records in Datasheet or Form view, on the Home tab, in the Records group, click Refresh All, and then click Refresh. To refresh the records in PivotTable or PivotChart view, on the Design tab, in the Data group, click Refresh Pivot. Press SHIFT+F9.
The simplest solution might be to just do the clearing by hand. Alternatively, you can put all your controls into a user control container. Then just instantiate that user control on your form. If you want to reload your form content, you now just need to remove and re-instantiate the user control.
Introduction. Windows Forms is a UI framework for building Windows desktop apps. It provides one of the most productive ways to create desktop apps based on the visual designer provided in Visual Studio. Functionality such as drag-and-drop placement of visual controls makes it easy to build desktop apps.
"this.Refresh();,this.Invalidate();,form.Refresh(),form.Invalidate()"
These functions just tell the window manager to redraw the form graphic; they have nothing to do with the state of the form's data.
Seems that all you need to do is set your control values back to their original values So, make a function on the form:
private void ResetForm()
{
//write code here to setup your dropdowns, put empty strings into textboxes, etc.
//pretty much the reverse of the process by which you copy the values into your user object.
}
and then in the sucess part of the code call the function:
if ( UserManagement.UserInfo_Update (obj) > 0 )
{
MessageBox.Show ("Record Succesfully Updated!");
//reset this form, no need to make another one...
ResetForm();
}
and you can also include a call to ResetForm()
somewhere in your Form_Load
, etc.
However
I'd recommend that once you are comfortable with doing this, you then stop doing it and use the data-binding facility that's built into Winforms; what it allows you to do is use the designer to bind user interface elements on the form (textboxes, etc) to various Class properties (e.g. UserManagement
class).
This way you can simply "reset" your form by creating a new instance of UserManagement
without having to deal with all the cruddy details of clearing out textboxes, etc. Otherwise you will find as your objects grow more complex, writing the code to manually reset form UI elments becomes more and more tedious and error-prone.
Hope that helps.
This is simple. You must create a new form object and close current form.
Form fr = new Form();
fr.Show();
this.Close();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With