For a non confusing answer: No. There is no way to set the opacity of
all currently running applications to any value. 'Running
applications' don't have opacity as a property. Forms do. UIElements
do. Various graphic elements do.
Now, if you wanted to, say, set all visible forms to 80% opacity....
foreach (Process process in processlist)
{
IntPtr hWnd = process.MainWindowHandle;
if (!hWnd.Equals(IntPtr.Zero)) // zero means either no window or
window not visible
{
System.Windows.Forms.Form processForm;
// do something to find the Form object of the window
processForm.Opacity = 0.8;
}
}
Problem is, I dunno what the 'do something' is, nor can I easily find
that out from looking around quickly. I know I can generate a Graphics
object from an hWnd safely... :) And all the REST is safe. :)