c# - I would like to close a child form from another child forms event? -
i have child pops display data.
but when data changes new form created display new data.
i want close old form, don't end 5000 forms every time data changes.
the reason new form created in name data's id can shown.
my code:
string pass; // used value class , pass next form. public void shownewcomparediff() //object sender, eventargs e { formcomparediff childform = new formcomparediff(pass); childform.mdiparent = mdiparent; childform.text = "comepare difference "; //childform.close(); //not working //childform = null; //not working childform.show(); } private void datagridviewresult_cellmouseclick(object sender, datagridviewcellmouseeventargs e) { comparexml com = new comparexml(); pass = com.compare(richtextboxsql.text, richtextboxprevsql.text); shownewcomparediff(); }
child form formcomparediff:
namespace auditit_1 { public partial class formcomparediff : form { string passed; public formcomparediff(string pass) { passed = pass; this.startposition = system.windows.forms.formstartposition.manual; this.location = new system.drawing.point(836, 0); // form shows next formschemasearch initializecomponent(); } private void formcomparediff_load(object sender, eventargs e) { string pass = passed; comparexml com = new comparexml(); webbrowserdifferences.documenttext = com.resultshow(pass); } } }
you convert childform
member variable of class, , alter shownewcomparediff
method this:
formcomparediff childform; public void shownewcomparediff() { if (childform != null) childform.dispose(); // rid of old form, if exists childform = new formcomparediff(pass); childform.mdiparent = mdiparent; ... }
edit:
complete example
create new windowsformapplication
, add new button
form
, add following code:
public partial class form1 : form { form myform; public form1() { initializecomponent(); } private void button1_click(object sender, eventargs e) { if (myform != null) myform.dispose(); myform = new form() { text = datetime.now.tostring() }; myform.show(); } }
test it. you'll see how works.
Comments
Post a Comment