Username:   Password:  

Access forms by a thread

delegate void WriteStatusCallback(string statusMsg); 
 
public void WriteStatus(string statusMsg)
{
    if (InvokeRequired)
    {
        Invoke(new WriteStatusCallback(WriteStatus), new Object[] { statusMsg });
    }
    else
    {
        // Access Windows forms control
    }
}

Accessing Windows forms controls needs special handling by the Invoke() function.

Tags

C# CSharp threads invoke windows forms

Form fade out

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    Form FormToFadeOut = (Form)sender;
    float Step = (float)(100f / 20);
    float Opacity = 100f;
 
    for (byte b = 0; b < 10; b++)
    {
        FormToFadeOut.Opacity = Opacity / 100;
        FormToFadeOut.Refresh();
        Opacity -= Step;
    }
}

As the title says, fades out a form. Replace FormToFadeOut with the form name you want to fade out.

Tags

C# CSharp Forms fade out