I have a working WPF application and now I want to add Roles/Permissions and Login functionality to it. I plan to authenticate user on the Application_startup event but while showing the login dialog here I want to show user a welcome type application startup window like we see when Microsoft office loads. Is there a built in way to design something like this or I should just design a new dialog for this? Also whats the best way to authenticate users in WPF?
About including a splash screen in a WPF application please read this
Related
I have a WPF application using WPF WebBrowser control. The appilcation is running on windows (as a Kiosk). The webbrowser is configured to show some service from the web. When the users try to sign in, that website redirect to the 3rd party Authentication Provider (SAML). After the user had successfully sign-ined, the 3rd party Authentication Provider redirect the user to the original website.
And the original website shows the error that the website needs the "cookies to be enable".
When using the Windows Forms Browser inside the WindowsFormHost on the same WPF application, there's no such error.
On IE11 there's also no error.
The website and 3rd party Authentication provider is not under my control.
The WPF WebBrowser control in the application is forced to use IE11 through BrowserEmulation.
Can someone tell me why the WPF WebBrowser control behavior is different from the WindowsForm Browser control?
I have created a WPF User control library. It has by default 1 user control in it. I added two more user controls on it. Added next back button to everycontrol. Now I am stuck here. What should I do to navigate from one user control to another? Can I do that in MVVM pattern? if yes then how?
Try downloading Telerik trial pack, they have a demo app (with source) that allows to browse their control. An once you have that demo app you can switch the user control dll in background when an update occurs.
I'm developing a silerlight application and have settled on the MVVM Light framework. One of the things I'm trying to do is create a "LoginStatus" control that can be used on multiple locations because we have different layouts that the pages are grouped into.
My challenge is how to redirect the page from a user control. When the users "logout" I want to redirect them to a different page not just a different View. Anybody have any thoughts or some examples that might do something like this.
Most of the examples I have seen out there just change the status on the current view.
dbl
If you really want to navigate to a new page - i.e. leaving the silverlight application - you can use the Navigate method of the System.Windows.Browser.HtmlWindow class (documentation).
System.Windows.Browser.HtmlPage.Window.Navigate(
new Uri("http://silverlight.net")
);
Otherwise, if you do not want to leave the silverlight application you simply navigate to a default view that informs the user that he is not logged in.
Edit:
For implementing a navigation service in Silverlight see for example this post or this post.
Is there any way to load my silverlight app in F11 mode directly?
I have used
window.open(url, '_self',
'toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=no,fullscreen=yes',
'true');
HtmlPage.window.invoke("launchPage",url);
But the problem is that two instances of my app are opened. One in normal screen and the other in fullscreen.
I have tried
App.Current.Host.Content.IsFullScreen = true;
in the constructor of the App.xaml
Still its not working. :(
Where am I going wrong??
running a Silverlight application automatically in full-screen is not possible because of security restriction. It is like the following...
You have opened your banks login page in a Firefox tab. This is your current tab.
You are opening a malicious silverlight application on another tab.
The malicious silverlight application loads and creates a full-screen that exactly matches your bank's login page.
You are talking to someone while the silverlight application loads. (Your eye is not on screen) So you missed the fullscreen message that pops up.
Now when you look at the computer screen you see your bank login page that is actually a fullscreen page of the silverlight application that matches your bank's login page.
You enter your user name and password...and
When you click login the malicious application has got everything it wanted.
This is not only for Silverlight. It is a restriction that SHOULD BE THERE WITH EVERY ACTIVEX CONTROL UNTIL THIS PROBLEM IS SOLVED.
What you are doing with javascript is you are opening a new pop up window without menubar, addressbar etc. It is not a replacement of F11. And to my experience most of the users hate automatic poping up. And most modern browsers will block them anyway.
The best way is to tell the user she needs to view your application on fullscreen and LET HER DECIDE INSTEAD OF FORCING IT.
When a Silverlight plug-in is in full-screen mode, it disables most keyboard events. They say it is for security reasons:
is intended to minimize the
possibility of unintended information
being entered by a user
What I don't understand is what is the difference of silverlight fullscreen or any web browser fullscreen?
Is a browser in fullscreen not a security risk too? Anybody complains about the browser fullscreen mode?
Thank you
The full reason for this is that a malicious Silverlight application could create a UI that matches your banking login screen, the Windows login screen, Facebook or whatever site they wanted your login details.
Not only are certain keyboard keys disabled, but full screen cannot be invoked unless there is a user activated action. For example, the user would have to click a button to go fullscreen, you as a developer are not able to make the app full-screen without this.
This is a pro-active response to known security risks by Microsoft and although there are downsides, the pros do outweigh the cons.