WPF Application not scrolling with touch on some Windows 10 tablets - wpf

I have a WPF application that includes a screen that users can scroll up and down. It has a scroll viewer control which provides a scroll bar and you can also scroll up and down using touch to drag the content up or down. This all works fine on all of my PCs, laptops and tablets and on most of my clients laptops and tablets.
However, I have one client who can only scroll the form up and down using the scroll bar. Using touch to drag and drop the contents of the form does not work.
I have seen this before on another tablet and we found that by installing all of the Windows updates the problem was resolved. However, on this tablet Windows is saying there are no more updates and the problem still exists.
The tablet is a Linx 10 that had Windows 10 on it from the start - it's not an upgrade. My hunch is that it needs the relevant Windows update but that Windows isn't reporting it as a required update.
Has anyone experienced this and identified what files/updates are needed to resolve it?
Just to re-iterate the application works fine on most PCs and tablets, so I don't think it's a basic coding problem which is why I haven't included any code.

Related

Make Touch Screen Ignore Labels for Window Scrolling in Winforms App

I have a winforms app that has a tab page with a lot of labels, textboxes, and other controls. Some users are running this app on tablet PCs. The problem is that it's hard to find a screen area in the tab large enough to "grab on to" in order to scroll the tabs contents up and down with your finger. You have to find a spot in between all the labels and other controls. I don't have the option of moving any of these controls to another tab and don't have much real estate to work with.
Since the labels are not interactive and only display text, I thought it could be good if there was some way to make them ignore touch input so that the user can use the label areas to "grab on to" and scroll the window.
Is there any way to make labels behave this way?
Thanks in advance...
EDIT:
Per request below.
IDE is Visual Studio Express 2012 for Windows Desktop
Platform is x86
The Framework is .net 4.5
UI is primarily Windows 8 running on a tablet PC

Horizontal Scrollbar missing from Infragistics WinForms UltraDayView

Using Infragistics NetAdvantage for Windows Forms 11.2, I've set up a schedule grid that uses the UltraDayView control. When there are more rooms (owners) shown than would fit on the form, the horizontal scroll bar will properly show, allowing the user to view the additional rooms.
However, after upgrading to NetAdvantage for Windows Forms 13.1, the horizontal scroll bar no longer shows when there are more rooms than what would fit on the form. The vertical scroll bar is always shown in both cases.
I've confirmed it's due to the control library upgrade, as no code has changed on this form since upgrading, and using source control to revert to the prior version re-enables the horizontal scroll bar. I also cannot find any information about this behaviour on the Infragistics website.
Has anyone here experienced this as well, and if so, have you found a workaround?
This is a bug in the control and was logged as development issue 143026 and the fix will be in the next service release for NetAdvantage for Windows Forms. Currently this is scheduled for June 21st. For update on the service releases you should check the Infragistics Product Service Release Schedule.
When the service release is available, you will be able to download it from the My Keys and Downloads Page.

Getting only gray screen when launching citrix application

Recently we installed a .net WPF application on citrix. When I go and launch it from citrix using RES powerfuse, I only get a grey screen and no controls are rendered on the screen.
The application is open and the main window can be seen but everything is grey in it. The mouse pointer also disappears behind the application.
The funny part is when the people from the operations team launch the application, it works fine. but not for regular users. This makes me suspect it could be something to do with permissions, yet we have given the access to open the program to all users, thats why the icon appears in citrix in the first place
What server are you running the app on? I recall we hit a WPF rendering bug on certain versions of Windows Server (+ XenApp) where the app would only render properly for administrators. This was a .NET bug - nothing to do with Citrix per-say. From what I remember the WPF rendering engine was trying to get access to some system resource that regular users could not access. I believe we only saw this on 2003 servers.
Just did some further digging, I think this is the issue:
http://support.microsoft.com/kb/955692
For quick n temporary resolution:
Check your local machine resolution and Citrix desktop/application resolution.
Equalise the both it will work.
Ex: 1024/762 is the right resolution.
For test: Do maximise n minimize the screen you will see the change.

How do you detect tablet PC screen rotation in a full screen Silverlight application?

I am working on a Silverlight 4 out of browser (OOB) application on a Windows 7 tablet PC. The majority of the time, the program is in full screen mode. However, if the user rotates the tablet, the application rotates and stays full screen, but is scaled for the previous screen orientation. Taking the application out of full screen and putting it back into full screen rescales everything correctly. Is there any way I can detect when the screen rotates? So far I've tried the app's Resize, LayoutChanged and FullScreenChanged events and have a handler for the main page's SizeChanged event. None of these get fired when the application is rotated in full screen mode.
Per Josh Einstein's suggestion, I tried polling the ActualWidth/Height of the application on a timer. It looks like after the rotation, the ActualWidth/Height values returned from the Silverlight plug-in are the pre-rotated values. Only taking it out of full screen and putting it back in full screen will change the resolution of the plug-in. The HtmlPage.Eval hack didn't work since I am OOB.
The WP7 version of Silverlight has the OnOrientationChanged event, which doesn't seem to be available in the desktop version. Anyone have any ideas?
Great question but as far as I can tell, it doesn't seem to be possible. I tried changing the screen resolution in a virtual machine (orientation change is really just a screen resolution change that results in width being larger than height or vice versa) and could not trigger any layout events.
The issue seems to be that the Silverlight plugin itself is not resized. With an elevated out-of-browser application you could presumably use COM interop with WMI to get the actual screen resolution, but it's kind of hacky. If it's an in-browser application, you could use the HTML DOM. In both cases, you'll probably have to poll for the current screen resolution instead of being notified via an event.
Mister Goodcat has written a blog post about how to get at this information in both scenarios.
I would file it as a Silverlight bug too.

WPF not rendering on remote desktop

I'm having problems with the rendering of a WPF app over a remote desktop connection.
The applications chrome is rendering, but none of the content is coming through, as if the window is not drawing. Instead the previous content of the screen is showing in it's place.
This has been a problem with the application running on both Vista & Win 7, with remote control being taken from XP and Win7.
The problem is not application specific, if I create a new WPF app, with just a textblock on the window, it will also not run. (Neather will the windows preview in VS2008 display.)
Is there some trick to getting WPF running under RDP?
I read on Kevin Dente's blog (from a twitter post) that he was having trouble with WPF apps in virtual machines. While not the same as Remote Desktop, it's possible the problem could be the same. Kevin was able to fix his problem by disabling hardware accelleration by creating a DWORD registry value at
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics\DisableHWAcceleration
and then setting it to 1.
His original blog post is here: http://weblogs.asp.net/kdente/archive/2009/10/19/visual-studio-2010-beta-2-editor-performance-fix-running-on-a-virtual-machine.aspx
That may not be your exact solution, but maybe it points you in the right direction.
WPF should render over RDP; it's smart enough to know when it can render in hardware, and when it can't it reverts to its own GDI+ based software rendering. I would make sure you're running .NET Framework 3.5 SP1 on the remote machine, since there were changes to remoting that might pose issues. (See link below.)
I've been developing a WPF app for the past 6 months and it works just fine over RDP. (From Vista and Win7 to XP, Vista and Server 2003.) One important caveat, however, is that it renders using the Classic theme. So if you're using controls that don't have a classic theme, they won't render. If you're just dropping a TextBox on a Window, then obviously that's not your problem.
Check out this question for some links that may be helpful: Are there problems with rendering WPF over Remote Desktop under Windows XP?
I just had this problem with the ribbonwindow not displaying correctly when testing for the first time via RDP - the transparent background was white, the close minimize/maximize buttons were missing, the rounded corners on the bottom of the window were square, and the top row of ribbon buttons were almost impossible to select.
Turns out there was a simple fix for me. Right-click the RDP connection icon (I have it saved on my desktop), select "Edit", then the "experience" tab, and change "detect connection quality automatically" to "LAN (10 Mbps or higher)".
This fixed it for me.
Ade
Did you also try Win7 latest RDP - Win7 connection? The thing is WPF doesn't use GDI to draw elements.
VNC clients (like UltraVNC) probably will do the trick for you as they using much simplier algorithms more like of sending bitmaps.
I have the same problem than the asker. The standard, out-of-the-box Checkbox is not rendering correctly. I can only see if it is checked when hoovering the checkbox. Otherwhise, no difference between checked and unchecked. Important note : It occurs when setting the foreground to white (see here : https://social.msdn.microsoft.com/Forums/vstudio/en-US/1c03db49-7e53-4cbb-9dd1-b328017c4453/wpf-checkbox-and-radiobutton-check-mark-not-showing-under-xp-windows-classic-theme-and-remote?forum=wpf)
Our application used to have this problem with a custom progress bar.
We fixed this by setting the background color of the Border control to White. This leads me to think there is an issue with transparent backgrounds
There is no special trick needed to get WPF content to show across remote desktop. Our WPF-based app renders just fine over RDP (tried from numerous machines) with no problems. We're even using animations, gradients, WriteableBitmap, etc. w/ no problems.

Resources