A set of .NET Framework managed libraries for developing graphical user interfaces.
I apologize but there are several thousand lines of code that is bound in part by an NDA so there is little specific code I can share. But I can describe in general terms what I am seeing.
The app reads raw image data from a camera every 20 seconds, processes the image and saves it as a JPEG. The app has approximately 40 application settings which are bound to form control properties (check boxes, sliders, text boxes, etc) that are used to control (among other things) how the image is processed. These form controls are all on a tabpage that is usually not the selected tabpage.
For example the Form1.Designer.cs has the following auto-generated line to bind the control to the settings...
this.cbMono.DataBindings.Add(new System.Windows.Forms.Binding("Checked", global::AllSkyCam.Properties.Settings.Default, "Mono", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
This "Mono" checkbox informs the image processing code that the camera is a monochrome and not color.
if(cbMono.checked)
ConvertMono();
else
ConvertColor();
The issue is that when the computer is accessed by Remote Desktop, the controls on the background tabpage seem to revert to "default" states regardless of the Properties.Settings' values. So as far as I can tell, the process of "moving" or "redrawing" the app's form on the Remote Desktop from the "local" desktop does not preserve/update the bindings. So... The above Mono checkbox is unchecked in the "move" to RD and the processing is sent to the wrong routine. However, if I select the "settings" tab, the controls redraw to the correct bound values and the correct routine is used again.
I guess the real question is, what does the "move" to RD subject a Windows Form App to?