Orientation problem when coding on Windows phone 7 - windows-phone-7

I write a page and I add
this.SupportedOrientations = SupportedPageOrientation.Portrait | SupportedPageOrientation.Landscape;
in the constructor.
After letting a messagebox popup and change orientation from portrait to landscape, I found that the UI under the messagebox didn’t change orientation from portrait to landscape as expected.
Is there anything I lose in code or this is the limitation of the UI framework now?

The MessageBox is modal and blocks the UI thread so such events like orientation changed won't be processed however the underlying UI should adapt to the orientation change once the message box is dismissed.

Related

Using a viewbox in PanningLayer

I am developing a panorama app for windows phone 7. I have a viewbox, which I want to stretch throughout the PanningLayer of the panorama app. I have removed the PanningTitleLayer. Everything works fine but there is a problem. When I run the app in the emulator, the viewbox is shown partially, you have to swipe it to see the hidden part of the viewbox. When I swipe the viewbox, it slides completely until it is back to the beginning. What I want is that when I swipe the viewbox, it should slide partially and stop, so that a user can see that part of the viewbox which is hidden. How do I do it?

How can I detect landscape orientation in a WP7 template using SketchFlow?

I am using the official Windows Phone 7 SketchFlow template, based on the Windows Phone SDK. Is there any way to detect when the user has clicked the landscape orientation button in the player, and act accordingly? Specifically, I'd like to display completely different views depending on orientation. Thank you!
It looks like the portrait and landscape functionality is implemented with visual states. If you select the correct visual state and make your changes (such as showing different controls) it should work the way you want.

Splash screen load progress animation in windows phone 7

I have written a windows phone application. When the application starts up it shows the splash screen which is cool and i can change the image. But is there a way to add a loading animation like those dots moving across the screen.
It would be nice if i can add one of those animation in the splash screen. Can it be done. if yes please add in your answers.
As of right now there is no way to replace the loading image that shows up with an animation. Although there are workarounds:
Remove the image all together. Might want to be careful though because Microsoft requires that the application show some kind of feedback to the user within a few seconds of launching the app. Use this only if your app loads really fast.
Display a snap shot of the loading screen as an image so when the app does load you can show an animation with the same background image and it appears that its the same loading screen.
In your case I would recommend using a popup control with a loading animation inside (Option 2). To learn how to create a popup go here. Or if you want a well documented popup I know telerik has there own version as well.
Next place the loading message in a textblock or put your own image and animation inside of the popup. Obviously the easiest animation would be to use the Performance Progress Bar in the silverlight toolkit.
Now what you'll want to do is set the popup opened by default. Whenever your processing is done all you have to do is set the popup visibility to hidden in your C# code.
Some examples of how this is implemented can be found here:
Creating a Splash Screen
Creating an Animated Splash Screen
All About Splash Screens
And here's an example for an XNA game:
Creating a Splash Screen for your XNA game

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.

UI Design on Windows Mobile/CE

I have recently started on a project developing a window mobile/ce buisiness application. I have a ui design that uses a wizard to capture input data. To get the wizard started we open a windows form and maximize it. The form has one panel on it that is set to the size of the form. We pass a reference to the panel into the wizard controller as a container for the wizard user controls (each wizard step is a user control and the user control's size is set to that of the panel and thus the windows form. When viewed in a windows mobile emulator this works great the user control takes up the entire screen and the controls on the wizard step control are all visible on the screen with no vertical or horizontal scroll bars visible. When we load this onto one of the potential handheld devices the windows form doesn't fit exactly onto the screen as I would expect. There are both horizontal and vertical scroll bars and the controls aren't all visible. Does anyone have any hints and tips on getting around this problem? Is it possible to maximize a windows form in such a way that it exactly fills the screen on any mobile or ce device?
You need to check the screen resolution of your emulator and of your handheld device.
I suspect you are working on different screen resolutions.
If it's the case, then set the screen res for your emulator to match the screen res of your device. If for some reason this is not possible, just create your form to match the screen res of the device and try to fit all your UI in that limited space.
If you need to support many screen resolutions, you have 2 approaches:
1. Develop for the lowest res. This might look a bit ugly for higher res devices
2. Use anchors and control docking when defining your form layout.

Resources