Is it possible to create a borderless UWP application? - c#

In WPF, we can set WindowStyle to None to create a "borderless" window.
But, I found that UWP contains pages only.
Is there any way to have borderless windows in UWP?

It's not possible to do the same, however you could make your app go fullscreen or expand its content into title bar so you'll get more place for the content. Another similar thing may be using Picture In Picture mode, but these windows are always above others AFAIK.
Read more about fullscreen in UWP for example here, about expanding the content into title bar here and about the PIP mode here.

You can see:CompactOverlay mode – aka Picture-in-Picture – Universal Windows App Model
The first is check whether it can support.
ApplicationView.GetForCurrentView().IsViewModeSupported(ApplicationViewMode.CompactOverlay)
And then you can enter it.
bool modeSwitched = await ApplicationView.GetForCurrentView().TryEnterViewModeAsync(ApplicationViewMode.CompactOverlay);
The code in github:https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/MultipleViews

Related

Open Windows 10 touch keyboard docked in WPF

We started creating a WPF touch application in Windows 8 and recently migrated to Windows 10. One feature we implemented is opening the Windows Keyboard when a TextBox receives focus. In Windows 8, it was possible to dock the keyboard to the bottom by setting the registry setting EdgeTargetDockedState and starting the TabTip process:
string path = #"C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe";
var info = new ProcessStartInfo(path);
info.WindowStyle = ProcessWindowStyle.Maximized;
var p = new Process();
p.StartInfo = info;
p.Start();
The Windows 10 keyboard however doesn't seem to have the same dock behavior as in Windows 8. The keyboard now overlays any maximized window which hides the bottom part of any application. Only not-maximized windows are resized to fit the remaining space.
I've checked the following links, but found no solution:
https://superuser.com/questions/951841/windows-10-touch-keyboard-doesnt-dock-or-maximize-at-the-bottom-of-the-screen
http://answers.microsoft.com/en-us/windows/forum/windows_10-desktop/windows-10-touch-keyboard-doesnt-dock/3c253400-568f-4e89-a253-0d7a747b5b63
Can the Windows 10 keyboard be docked programmatically for a maximized window?
I open-sourced my project to automate everything concerning TabTip integration in WPF app.
You can get it on nuget, and after that all you need is a simple config in your apps startup logic:
TabTipAutomation.BindTo<TextBox>();
You can bind TabTip automation logic to any UIElement. Virtual Keyboard will open when any such element will get focus, and it will close when element will lose focus. Not only that, but TabTipAutomation will move UIElement (or Window) into view, so that TabTip will not block focused element.
For more info refer to the project site.
To clarify: If you will be using this package TabTip will not be docked, but your UI will be in view, which i guess is what you wanted to achieve.
Check this article:
http://www.codeproject.com/Tips/1120263/Virtual-Keyboard-TabTip-integration-in-WPF-on-Win
Virtual Keyboard will open when any such element will get focus, and it will close when element will lose focus.
EDIT: In the case when WindowStyle is set to None, please check out my answer here. Also for manually handling touch keyboard appearance events, check out the sample code here.
The answers here are quite old, currently the touch keyboard works just fine when tapping any textbox, even if the window is maximized.
I recommend targeting at least .NET 4.6.2 to get the best support for touch keyboards in Windows 10, due to a bug in WPF that was fixed in that version. Read more here, scroll down to WPF section.
The only thing you'll have to do is design your XAML in a way that your user interface can react properly when the touch keyboard shows up. Usually putting your content inside a ScrollViewer like so should be enough:
<ScrollViewer PanningMode="VerticalOnly"
VerticalScrollBarVisibility="Hidden"
HorizontalScrollBarVisibility="Disabled"
<!--Content here-->
</ScrollViewer>
But for more advanced scenarios, like moving buttons that are at the bottom to above the keyboard, you'll need to write your XAML inside the ScrollViewer more carefully, for example by using grids with dynamic heights.
Hope this helps!

How to achieve Windows Phone 8 News App layout

I am wondering how does the News app on Windows Phone achieve its layout. I am taking about the main page when the app is first launched. It is not a pivot because you can see the next section on the current section. It is not a panorama because the background is not moving, and that it is a universal app so Panorama is not available. It is not a Hub because Hub does not allow you to wrap from the first to last, or vice versa.
I notice this layout is very similar, almost identical to the layout of the Fitbit app. I like this kind of layout a lot and I would like to use that on my own app. If there is a control for it please let me know, if not, how do I do what the developer have done on those apps.
The app is using the Panorama/Hub control. It does not set the title of the control and it does not have an image for it. The first Page/Section does have an image for the main article. this image is only set for that Page/Section. The first section also does not have a Header set (it's blank).
Hope that helps!

wp8 cant find a built-in options menu

Does anybody know if this control comes with the windows phone 8 SDK or if I must program it?
This screen appears when I go to people => click + icon. There are many very similar screens in windows phone but I don't know if they're ready controls or custom ones.
What I need is a screen that hides all background and just shows a list of options upon clicking a certain button, and I want to handle application overflow depending on the option the user chose.
Any ideas?
You can use the CustomMessageBox from toolkit http://phone.codeplex.com
it takes a Content that can be a listbox or user control.
and you can make it take the full screen.
check this: http://shawnoster.com/2012/10/welcome-custommessagebox-to-the-windows-phone-toolkit/
and this: https://stackoverflow.com/a/15944006/1423885

How to place a control over the task bar in windows using c#

i googled a lot and found out some info about the band object from which we can make the ad-in for the task bar, can i get some more tutorials from scratch & some sample programmes.
is there any other alternative way is there to place a control over the windows task bar apart from band objects?
Thanks in advance
If you want to place a textbox in the taskbar like the Google Desktop search bar, then you're not actually trying to place the control over the taskbar, you want to place it within the taskbar.
The proper solution here is a Desk Band. You can find an MSDN article explaining those here. I'm not really sure why you say that you want to avoid band objects. That's the right way to do this.
There's even a sample implementation in C# available on Code Project: Extending Explorer with Band Objects using .NET and Windows Forms
To make a window overlap the Taskbar you can set it's TopMost property to true. But then you will have to control the positioning yourself, and it will also overlap anything else beneath it, but it is a solution at least :)

Changing the window control buttons in WPF

I see that many applications do not have a title bar, but still have the window controls in the upper right corner. These are also styled differently than the normal windows form controls. Is it possible to achieve this effect in WPF?
Here are some examples:
Zune Desktop software:
http://i548.photobucket.com/albums/ii356/elpedrogrande/btns2.gif
Photoshop:
http://i548.photobucket.com/albums/ii356/elpedrogrande/btns3.gif
GoTo Assist:
http://i548.photobucket.com/albums/ii356/elpedrogrande/btns1.gif
They do this by setting the window style bits so it is created without a title bar. And then draw their own, making it look like a custom one. Which is the main reason that all these programs have caption glyphs that are not identical.
You'd accomplish the same in WPF by setting the WindowStyle to None. And a whole bunch of code to get back the behavior that Windows implements automatically with the title bar. Google "WM_NCHITTEST" to find out more.

Categories