Closing A Windows Form From Another?
Dec 31, 2009i want to check if a certain form is loaded and if so then close it from another form.
View 3 Repliesi want to check if a certain form is loaded and if so then close it from another form.
View 3 Replieshow I can reload a windows form without closing it using VB.NET?
View 3 RepliesI have an MDI form as the app start object.I don't think is related, but in the Form closing event, I check for some condition, and if it's true, I ask for confirmation before closing:
Private Sub FormBackground_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
If (e.CloseReason = CloseReason.UserClosing) Then[code].....
So long, everything works fine in my development machine, which runs windows XP.However, when deploying the application in a windows 7 machine, the message box works correctly, showing itself whenever it should, but after the form is closed the application keeps running in the background. This happens whether the form closes directly or asks the user first.I have fixed it putting an End instruction in the FormBackground.FormClosed event, but it doesn't feel good.
VB Windows form Application.. I am developing an application of which part of the program is around configuration settings allowing the user to enter configuration items. When the menubar item for configuration menu is clicked on the main form the menu opens.This is fine but the mainform should not become active again until the configuration menu has closed. This does not happen right now and the mainform simply comes to the foreground and the configuration form goes to the background... I realize that coding an event on the Child form to handle this would not work because the child window loses control and the main form gains control.. I thought of coding a function as follows on the main form but it does not seem logical because i would have to add to it for everyform and do checking to make sure the child is actually open before trying to close it..
Private Sub Form1_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.GotFocus
MailSettingsWindow.Close()
RentalSettingsWindow.Close()
[code]....
I did away with the above sub routine and used the below code as per the recomendation of using showdialog which works just as i was looking for.
Private Sub MailingAndEmailSettingsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MailingAndEmailSettingsToolStripMenuItem.Click
Dim MailConfig As New MailSettingsWindow()
MailSettingsWindow.Showdialog()
End Sub
Dim frm As Form
For Each frm In Forms
Set frm = Nothing
Next frm
The above code is what I used in VB6 to close all forms associated with my programs before my program closed. I have been searching for information on how to make sure all forms are closed when closing a VB2008 program.
I have seen info on using the Project Property Shutdown mode When startup form closes and I currently have this set.
Is this all that is really necessary? Will the garbage disposal close everything else to free up RAM?
Also, if I have several forms open and want to close all from the main form without closing each one individually, what is the best approach? Is there a collection like in VB6, go through the collection, compare it to the name of the main form and close it if it is not the main form?
I have the following code to close a form which is a child. The problem is that when it closes, it closes the MDI parent too.
Private Sub frmTransaction_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
If ListView1.Items.Count >= 1 Then
[Code]....
I have 2 functions for opening and closing Windows Explorer, which is still working fine with Windows XP and even Vista. The same functions not working on Windows 7. Following are the functions:
Dim HTProcess
As New Hashtable
Private
[Code].....
I have 2 functions for opening and closing Windows Explorer, which is still working fine with Windows XP and even Vista. The same functions not working on Windows 7
Dim HTProcess
As New Hashtable
Private
[code]...
And 'CloseFolder' functions not able to close the Windows Explorer in Windows 7
It all works fine it looks like this:Now thats enough for me but as many other users we have a problem of lack of knowledge when it comes to this:Windows is shutting down, the confirmation box appears and stops the windows from shutting down...This is unnaceptable imho and im trying to find a easy way to detect if windows is shuting down, or in other words if its NOT.So i put a: if windows isnot Shutting down then'all the other code in mybase.closingEnd ifIs such thing doable? all ive found was pages and pages of codes (something to do with api) and some outdated vb6 code...
View 3 RepliesAlright, I have a vb6 LEGACY application and new Functionality (Form) written in c#. I have a VB.NET COM Class as a wrapper. I can launch the .NET Form just fine. THe problem I am having is closing the .net form from vb6.
Example:
In VB6, I have something like this:
CODE:
But it does not work becuase frmViewer is Nothing for some reason. how I should close the .NET form that was launched from VB6?
I have a parent form that has a list of items and each item has a unique ID. The user can open one or many of the items in a child form (it is set up in a tabbed MDI), but it can only open one instance of each item at a time.
In the parent form, I was going to make a collection (or something like that, maybe there is a better way) to keep track of which items are open in the child forms. I need to know when each child is closed so that it can be removed from the collection and reopened at a later time. I was thinking that when the child form closes, it somehow does something (like raise an event) that tells the parent form to remove the unique ID from the list of current open child forms.
My questions are, is this a good way to do this and I am pretty sure I would use the form closed event in the child form to update that parent form, but as well, I didn't know if this is the best way of handling it.
If raising the event is a good way, are some examples on how to do it out there? I found some for controls, but not while the form is closing/closed.
after running what i wanted in the DOS command prompt with:
System.Diagnostics.Process.Start("cmd.exe","/C C:gds2asc.exe C: emp.gds C: emp.txt")
How do i exit or close the command prompt window?
I am working on a project that has the user building scrapbook pages through several different forms. When the user selects something a presses a button I have the information about the selection load to a list box which is on a CheckoutForm. One of the options I have is for the user to save what they have made (this includes the information in the list boxes) and return to a previous form to build another page. I have been trying to use the Me.Close() but it does not save the information and using Me.Hide() displays the wrong elements on the forms.
View 5 Repliesi have a parent form which is having a grid view. In the KeyDown event of the grid view i am calling a child form. If the user closed the child form, my application should close both the parent form and child form. What i have done is, i declared a boolean in the child form and passed the boolean value to parent. May be the code below will give the picture of what i am trying to do.
Private Sub gvJournalEntryDet_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles gvJournalEntryDet.KeyDown
I have a unique challenge that I just cannot seem to get by...I have a form with a series of listboxes that allows the user to rename items in the listbox (I probably should be using a listview control instead). When the user right-clicks and selects rename from the context menu I show a simple form with two labels & text boxes showing the selected list box item in one textbox...the other is blank waiting for the user to enter a new name. What I'd like to do is when the user closes the rename form, the information is passed back to the calling form and a listbox refresh method is fired to show the changed name. Couple question:
First, is there an easier method to implement the renaming concept in a listbox (probably should be using a list view) i.e., have I overcomplicated things?
I have 2 forms. When a user clicks something on form1, form2 pops up. After user is done with form2 and closes it (where the dataset is updated), I want form1 to "reload" the dataset to reflect changes made in form2.
View 1 RepliesI may be the only person still automating excel this way and I am looking at doing it in ways that better handle COM objects and such, but for now I just importMicrosoft.Office.Interop.Excel and go for it. Something that gave me a lot of grief at first was hanging excel.exe processes, but there are tons of resources online for fixing that. At this point I am pretty confident in my abilities to handle it.One thing I did notice and was wondering about is how does closing a windows forms application interact with excel.exe running in the background and likely more specifically the garbage collector. I have written quite a few excel automation projects and noticed that after I run my program .exe and it has completed there is an excel.exe process that hangs on until I close the pop up window from the windows forms application. Why is that happening?
View 1 RepliesI a suppose to when the user closes form1 display a messagebox. The messagebox should ask the user if they are sure. If they click yes let them close the form otherwise do not let them. This is the code I have
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim result As DialogResult
[Code]....
Form1 is a mdi container. It has a bunch of forms that can load inside of it as mdi children. If I close each open form inside the form1, and then click the red X at the top right, application exits fine.If I click the red X without closing the forms inside I get: An unhandled exception of type 'System.CannotUnloadAppDomainException' occurred in mscorlib.dll
Additional information: Error while unloading appdomain. (Exception from HRESULT: 0x80131015) However I can break from it. How do I get the application to not show that error? What must I do to fix those inside forms or close when the red x is clicked?
Is there a way that a form returns a value? something like ...
sub main()
Dim task as new TaskForm()
dim res as integer=0
res = task.opendialog()
end sub
i have a form with a listbox. the listbox can be edited (things added/deleted) and when the form is closed i would like the items in the listbox to be saved when the red "x" in the top right corner is clicked
View 3 RepliesI am having a problem with closing a form which I have inherited I have a form called frmAddForm_Simple, which contains 4 main controls (A Data Grid, A Save Button, A Close Button and a Text Box). The idea around the form is to create a form which could be used for inputting of many different types of data which are all entered in the same way (i.e. to add a new row to a database for [Status] table or [Location] table, all of which contain 2 columns in the database (an [Id] and a [value]). On the form I have a property called _FormChanged, which when the textbox text changes, sets the property to True. I then have the following code on the Close Button:-
Public Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click
If _FormChanged Then
If MessageBox.Show("Are you sure you want to close and discard any changes?", "Discard Changes",
[CODE]...
Is opened as a dialog (ShowDialog) and when I go to close the inherited form (by click on btnClose) and answer No to the above MessageBox the form closes anyway. Using the Debugged I have worked out that the following events occur in sequence (all of which runs in the Master Form mentioned above):-
1) btnClose_Click sub Routine runs
2) I answer No to the question do I want to close the form
3) The debugger steps over the Me.Close() line (as expected)
4) The debugger jumps up to the Sub Initialise (where ShowDialog was called from) and closes the form.
So at no point has the debugger even ran a line of code which reads Me.Close(), but the form closes anyway so Im fairly confused as to why the form should close.
My Master Form (frmAddForm_Simple) Code:-
Public Class frmAddForm_Simple
Private _FormChanged As Boolean = False
Private _FormLoading As Boolean = False
[CODE].............................
I've got 2 forms; form1 and form2.
Button1 is added to form1.
When I click button1, I want to close form1 and open form2.
I tried the following.
me.close
form2.show
Its not working. Form1 gets closed but form2 is not showing up.
When I use the following code
me.hide
form2.show, its working.
But hide will not unload form1 and it will still occupy memory.
I am trying to close Form1 and then open Form2, but when i do it closes the whole program.I have tried to just hide Form1, but then i can't close the program and I have tried this method too but could not get it to work?
View 2 Repliesif there is a way that you can close a form and reopen it. The reason is because I have created a tic tac toe game, but at the end I want them to be able to play again. The problem is that if I want them to start over I would have to set alot of stuff back to 0 and or change the buttons on the screen etc. Is there a simple way to just close the form and have it reopen?
View 2 RepliesI'm working on an application that opens different mdi child forms to do different things whit the data from an Access database. For example I have a form that searches an item in the data base. The other form shows the items details or history. All database communication is handled by data-manager classes. Each whit it own instance of the class. The child forms have no connection to each other (passing of the item is by global variable object).The error occurs after the formclosed event from the closing form.The same error occurs when I open the form one by one.When I have two different child's open and I close one I get this error message: System.InvalidOperationException was unhandled. In a no source Available window.to open the two child forms (from a menu in the mdi parent) a use this code:[code]
View 2 RepliesI have form1 and form2 and have when a user clicks on an icon on form1 it shows form2 and hides form1. But how would I get it to when a user closes form2 it will show form1 again?
View 3 Replies[Code] when the program is launched normally it works fine but when the program is passed the appropriate command line my program responds accordingly except for the fact that the first form does not hide() when told to. its like the program just skips that line and shows the recovery form.
View 2 RepliesIn my one form I have a cancel button whcih is supposed to the form when the button is clicked. But its not closing the form. What could be possible reasons. I am using VS2008.Net3.5
The code is:
Private Sub cbCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbCancel.Click
[code].....
I have a form in a Pocket PC app that is set to be the Application form using:Application.Run(New frmMain())Somehow this form is getting closed for no reason while working on another form. No closing event is fired and nowhere in my code can you close the main form anyway. It is only closed by clicking the OK button at the top right of the window. When this is clicked, the user is prompted if he/she really wants to close the application. However, this is not occurring either.Basically, I am on another form which adds a new record to the database. After adding the record the gotFocus event is somehow called for frmMain. When the code in the gotFocus event reaches a reference to a control on the form, there is an exception that states that the object is disposed.
View 1 Replies