WinRT Settings Charm. Elements overlayed by on screen keyboard - user-interface

I'm developing for Windows 8 (WInRT) and have problem with settings charm. Settings popup is based on Microsoft SDK settings charm. Settings panel is Popup. Content is wrapped by ScrollViewer -> Grid -> StackPanel. In StackPanel I have input fields. when I trying to fill last of them on screen keyboard overlaying it and I cant see field and cant scroll to it. Is there any way to see it and to scroll to it automatically?

Seems like the popups on Windows 8 suffer from the same problem as they did on Windows Phone in that when you put a TextBox on one of them - it does not get pushed up together with all the other content as it does when it is not in a popup.
My solution to that would be to not use popup for input fields and instead go for a layout that you can manage yourself.
By default the app has a Frame control at its visual root. You can modify it for example by putting your own UserControl in there (I usually call it AppShell) which has the Frame used by all pages, you can have a layer for popups, log in screens, the extended splash screen etc.
To solve your problem you would need to put your charm's UI inside of such layer instead of in a popup. Then the build-in mechanism that pushes all the UI up when the on-screen keyboard would otherwise obstruct the view of your TextBox should just start working again.
*EDIT
A simpler solution might be to make sure your settings panel popup is parented in your visual tree - e.g. by adding it as a child element to a root grid of your app or page. It turns out that in that case its content does get pushed up when the OSK shows up.

Take a look at this post
It's a popup wrapper (turns user controls into popups) that takes care of the keyboard appearing and adjusts the size of the popup (and thus the user control) accordingly.

Related

Windows Phone - Loading/Saving panel

I often need loading panel, which shows an indeterminate progressbar and a textblock in fullscreen mode. I do this with a Grid and just set the visibilty so visible. Instead of copy source code from page to page, I want to re-use it as a control. Is there already an existing control I can use?
Create your own usercontrol is the best way if you want to reuse the control. There are a lot of guides on Google, search for "custom user control silverlight" or something similar.

How can to see off screen content at design time in Blend or VS for Windows Phone 7 or 8

I am designing a long Windows Phone 8 page. It is very frustrating that I can't see most of it in the design visuals.
I was wondering if anyone knows a way of being able to see the content visually, at design time, of either the bottom of the page (i.e. scrolling up in the designer), or preferable to be able to see the whole page.
I know you can turn the chrome off, is there any way to turn the view windows masking frame off?
This also applies to trying to see a whole panorama view too!
Thanks
Try temporarily collapsing the controls which are above the controls which is getting off screen. Later you can set that control to required dimensions again.
Instead of removing d:DesignWidth & d:DesignHeight from xaml root tag, just set these values high enough such that all of your content gets displayed.

Scrolling issues with SIP (keyboard) open on wp7

I am developing an application for WP7 platform (actually WP7.1 sdk). I have a page with an image and couple textboxes in a Grid encapsulated in scrollviwer, that supports both portrait and landscape orientation. I am facing some odd behaviors that rised my two questions:
Is there a solution or at least explanation why in Portrait mode when I focus on any textbox and SIP comes up I cannot scroll through the page in the rest of viewable area? When I try to scroll it with SIP up it always bounces back to the focused textbox so to select another textbox I have to tap elswere to hide the SIP and select another textbox. (its annoying and user unfriendly) In a landscape mode though, I can scroll through the page easily (without bouncing) and select whatever I want with SIP up. I think it has to do something with a fact that in portrait mode without sip you can see all elements and in landscape you have to scroll down to see some textboxes. But if I look into some system apps I see similar pages and it doesnt bounce to focused textbox with the keyboard up, so I dunno what am I doing wrong.
Is there any workaround to correctly position dropdown from autocompletebox control from toolkit while it is declared inside of scrollviewer? Its position is always messed up, most of the time I tried to solve this it showed up over the textbox itself hiding it.
Thanks for your time.
I already did some research but didnt solve anything :-/
Could you please try my solution ?
https://siphelper.codeplex.com/
I would recommend you to read Alex's article on the subject. I think it should answer your problem just fine.
Not really. And you shouldn't have a AutoCompleteBox in a ScrollViewer.

Prevent screen zoom on textbox focus on Windows Mobile 7

On Windows Mobile 7, when a user clicks on a text box before entering some data - the screen usually zooms in to the box and pulls up the keyboard.
Is there a way to prevent the zoom? Or is this a setting on the phone itself?
Thanks gents - but the answer I needed was to include a viewport meta tag that defined the 'user-scalable' parameter as 'no'. Anyone grappling with mobile device cross browser compatibility issues should check this page out - a huge help to me today.
http://davidbcalhoun.com/2010/viewport-metatag
This usually happens in the web browser as the textbox could be tiny when it is clicked. I agree it can be annoying. It does not happen in native apps however.
if you click on a textbox in the app, and it is under the area where the keyboard would be.
It is normal behavior when text box is focused. Your content is moving up when on screen keyboard is appearing.
if you want your content to stay on it's place you can try to use Coding4fun controls(download with sample here: http://coding4fun.codeplex.com/SourceControl/list/changesets). Run Test Application, go to Promts -> Basic input or Advanced input.

MFC: Scrollable Panel/Sub-windows containing controls

Whats the best way to create a 'scrollable panel' in MFC (C++) ? In the past I have displayed different windows "attached" or "on top" of my main dialog window as a means of display different pages of an application. What I want to do this time is create a panel of controls that can be scrolled (because the virtual size of the panel is bigger than the size of the panel itself).
Can anybody recommend any good articles or tutorials on how best to do this?
Thanks
You can create an independent scrollbar control on the side of your dialog. Respond to the messages in the dialog to move your controls. Since the child windows will crop themselves to the parent client area, feel free to move them completely off the dialog as they scroll off the page.
If you place the controls in a CScrollView or a CFormView they will be automatically scrollable inside the view area.

Resources