UI Design on Windows Mobile/CE - windows

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.

Related

Automatic window resize using Visual Studio 13

How can I have a window resize automatically to fit the screen on the monitor, using Visual Studio 13 and C#.
Have an application which displays the main window from which you can call up (Fig 1) and individually display different forms to be populated and then submitted.
On some computers, the complete form is shown (Fig 2); however, on a few computers, only about 80% of the page is displayed (Fig3). No side (up/down) scroll bar is displayed, so the users on these computers are unable to scroll up and see the rest of the page. This is occurring on several computer makes and/or models and not limited to a specific make or model. Is there a method to be able to automatically resize the page to fit the screen or to show a scroll bar?
Tried re-imaging an affected computer from scratch, but get the same results. Image is coming from a central area, so don’t believe it’s the software. Other machines are re-imaged with same central image without this problem.
Using Control Panel, tried adjusting the resolution for the monitor with no success, getting the same results. Using a larger monitor does not solve this issue.
Had users use other unaffected computer, and they are able to get the complete screen. Tried users from unaffected machines test affected machines and they are unable to get the complete screen. User account profile is probably not the issue.
I am new to Visual Studio, C# and programming. I am trying to maintain a legacy application and do not want to break the application 90% of users are able to see complete windows. Open to suggestions.
(Fig 1) Main window
(Fig 2) Functioning correctly, what window should look like.
90% of users get this window
(Fig 3) Functioning incorrectly, 10% of users get this window.
Bottom is cut off. No scroll bar
To Use Scroll bars for this purpose you have to select the panel which content is getting hidden and in the properties choose AutoScroll : True
Here is the image

MFC IVideoWindow put_FullScreenMode works incorrectly

So I have next problem:
I have two monitors and do video translation from web camera on one of them(secondary). I do it in full screen mode using
put_FullScreenMode().
It works fine but when I click any mouse button on area of primary monitor, window with video translation wrap into just window mode.
How can I save full screen mode working with primary monitor?
At the first, I move my video to the left (on secondary monito from primary) and use full screen mode.
if(monitors.GetCount() > 1)
gx.pVW->put_Left(primaryRect.right);
gx.pVW->put_FullScreenMode(OATRUE);
gx.pVW->put_Visible(OATRUE);
Thank you for your time.
[Much] older applications took advantage of FullScreenMode since API supplied a specific "full screen renderer" filter which efficiently took care of full screen presentation. Since then video adapters found their way into stretching of presented video and full screen mode become unnecessary. Windowed mode of video renderer (you are using) was also not a recommended mode compared to windowless any longer.
You would be better off using renderer in windowless mode right in your UI, in your window, form or dialog. Using borderless window hosting video renderer you can easily imitate full screen mode without actually change of display mode. Such window remains normal window and does not need to go back from full screen with another UI activity, e.g. such that happens on another monitor.
VMR filters themselves demonstrate the two ways of going fullscreen in their Filter Config property page:
Set Fullscreen does it the way you do and suffer from the mentioned issue. The other method does full screen mode using borderless window stretched to the extent of a monitor.
See also related discussion:
IVideoWindow::put_FullScreen returning only native video size

How to test what a webpage/web app will look like with Firefox on a specific screen resolution

I have the task of testing a web application where it is given that this app should fit a screen with the resolution of 1280*1024.
My work monitor is, however, a 20 inch screen with resolution 1680*1050.
Will resizing the Firefox window to 1280*1024 meet the test criteria or should I always change the resolution of my monitor? (Obviously, the second option is not preferred).
And also: Is there a Firefox plugin which will help me to set the window size appropriately?
Sometimes asking the question out loud helps to realise what you really want :)
There is Firefox addon called More Display Resolutions which helps to show the page in given resolution, even in 1280*1024
After you install it, just go to Tools -> Web Developer- > Responsive Design View and here you can turn on the preffered resolution:
Ok, the above died. What now?
Since time of writing this answer I changed jobs and do not have to test specific resolutions. But I did quick google search and this site seems to be working: http://quirktools.com/screenfly/
Responsive Design Mode is a stock part of Firefox which is available from the Menu Bar: Tools -> Web Developer -> Responsive Design View in all Firefox versions (keyboard shortcut: Ctrl + Shift + M, (or Cmd + Opt + M on OS X)). No extension is needed to access this mode.
Within Responsive Design Mode, you can set the exact display area used for the webpage. There are several preset dimensions. Alternately, custom display dimensions can be used by either directly typing the dimensions in, or dragging the display to the size desired. What is being set is the pixel dimensions used for the area containing the display of the webpage.
These dimensions are not the same as setting the pixel dimensions used for the entire screen, which would include the Firefox user interface. If you set it to the dimensions of a specific physical display size it is the same as would be displayed using Full Screen mode (on desktop versions, keyboard shortcut F11). If you want to see what your page will look like including the Firefox user interface, you will need to determine how many pixels the user interface consumes at the screen resolution you are interested in and on the platform you are intending to use (e.g. desktop, Android, iOS). You will then need to use a custom display size. Note that the amount of room used for the Firefox user interface will depend on many factors which include—in addition to the OS and resolution of the physical display—any theme the user has installed, which toolbars the user has chosen to display, and, potentially, which add-ons the user has installed.
This is what Responsive Design Mode looks like:

How to handle screen rotation on windows 8 application

i was wondering how can I handle screen rotations for windows 8 applications using c#?
I want to create several xaml files and just change them every time the screen orientation is changed. Is that even possible?
You can use the Device Window in Visual Studio to record state changes to your UI elements. In the Device Window you can select the other visual states (namely snapped, full screen portrait, full screen landscape, and filled) and then make the changes you need for the desired end state. Those changes are then captured in the VisualStateManager that's part of your XAML file. The obvious benefit here is that "it just works", you don't have to detect orientation state yourself or do any fancy XAML replacements/substitution.
Step 3 of Navigation, layout, and views tutorial has an example of this - granted, it's pretty simplistic, but should get the concepts across.
Open AppManifest file in your project and select the desired orientations .

WP7 - Text Button on the Application Bar

On Windows Phone 7, go to Settings, email & accounts, add an account, the Windows Live (or any other). Note at the bottom there is the gray panel with a rectangular [sign in] button. Click in the email address field, and the on screen keyboard pops up ABOVE the gray panel. Rotate the phone, and the gray panel does not rotate, although the page does. That gray panel is the Application Bar, is it not?
I only find docs for adding an icon-based round button (and menu items). How do we put a rectangular textual button on the Application Bar?
Adding buttons in the Application Bar is not supported for third party developers. The Application Bar itself is not a Silverlight control; it's a native one. Only OEMs, certain partners and MS have access to the native SDK, so you won't be able to template the Application Bar to have buttons. Of course, you could create your own Application Bar that mimics the real one, but I don't recommend that approach as it would be very tricky to get it exactly right and be consistent between apps.
Yes, that's the application bar. Well, it's the non Silverlight version of it. (The built in apps are not built with Silverlight.)
Unfortuanately it is not possible to use text buttons on the application bar. It's only possible to use buttons with images.
Yes it would be nice/useful in a number of situations but it's just not possible with the current SDK (even Mango). I keep hoping it'll be there in a future version...
The applications that come with the phone are not restricted to using developer APIs and the one you mention likely uses C++ and / or restricted APIs. As a third-party developer your only option is to stick with icons on the application bar.
You can always create a Panel colored like the application bar, aligned along the bottom of the screen and display buttons or whatever other UI element you want to.

Resources