Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 04:32

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[C#] WPF Panel außerhalb des Fensters

Discussion on [C#] WPF Panel außerhalb des Fensters within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 10
Join Date: Aug 2012
Posts: 813
Received Thanks: 106
[C#] WPF Panel außerhalb des Fensters

Hallo,
ich würde gerne wissen, wie man mit WPF ein Panel außerhalb des Fensters anzeigen lassen kann. Es soll ca. wie bei Steam sein, wo z.B. unten rechts immer die Nachrichten auftauchen, wenn jemand ein Spiel startet.
Wichtig ist mir nur, dass ich die Anzahl der Panels ggf. beschränken kann und, dass sie auch diesen Effekt haben, als ob die von unten ausgefahren werden.
Ich würde mich freuen, wenn jemand die Lösung weiß.

Danke schon einmal im Voraus für jede Hilfe.
GodHacker is offline  
Old 05/06/2014, 15:02   #2


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Nutzt du ein Framework? Pattern?

Grundsätzlich sollte dafür ne extra View her. Solltest du MVVM als Pattern verwenden, kannst du in das ViewModel ne statische Eigenschaft packen, die Instanzen mitzählt. Dementsprechend kannst du diese auch begrenzen.

Ein Panel außerhalb des sichtbaren Fensters zu platzieren wäre unsauber und würde auf Dauer auch kaum gut funktionieren, wenn du mehrere Betriebssysteme und Auflösungen ansprechen wollen würdest.
Mostey is offline  
Old 05/06/2014, 16:26   #3
 
elite*gold: 10
Join Date: Aug 2012
Posts: 813
Received Thanks: 106
Ich weiß gerade nicht, was du mit Framework, Pattern und MVVM meinst. ^^
Habe gerade mit WPF angefangen und weiß noch nicht wirklich, wie es geht. Habe aber auch gelesen, dass man etwas auf einem Overlay machen kann, was dann auch über anderen Programmen (z.B. fullscreen spielen) liegen würde.
Währe dass vllt eine option?
GodHacker is offline  
Old 05/06/2014, 16:41   #4


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Quote:
Originally Posted by GodHacker View Post
Ich weiß gerade nicht, was du mit Framework, Pattern und MVVM meinst. ^^
Für WPF gibt es einige bekannte Frameworks und Architekturpattern, nach denen man vorgehen kann, um bewusst zwischen Code, Logik und Design zu unterscheiden.

Eigentlich nutzen relativ wenige den alten Stil aus dem WinForms Framework, da WPF viel mehr drauf hat, wenn es richtig genutzt wird.



Quote:
Originally Posted by GodHacker View Post
Habe gerade mit WPF angefangen und weiß noch nicht wirklich, wie es geht. Habe aber auch gelesen, dass man etwas auf einem Overlay machen kann, was dann auch über anderen Programmen (z.B. fullscreen spielen) liegen würde.
Währe dass vllt eine option?
Vielleicht, du kommst aber ohne ein weiteres Fenster nicht weiter.
Mostey is offline  
Old 05/06/2014, 16:57   #5
 
elite*gold: 10
Join Date: Aug 2012
Posts: 813
Received Thanks: 106
Quote:
Originally Posted by Mostey View Post
Für WPF gibt es einige bekannte Frameworks und Architekturpattern, nach denen man vorgehen kann, um bewusst zwischen Code, Logik und Design zu unterscheiden.

Eigentlich nutzen relativ wenige den alten Stil aus dem WinForms Framework, da WPF viel mehr drauf hat, wenn es richtig genutzt wird.
Hast du vllt ein paar beispiele von solchen Frameworks und Architekturpattern? Würde mit vllt helfen, dass ich direkt den richtigen Einstieg in WPF mache (und interessieren tut es mich jetzt sowieso, wenn du es schon so schön erwähnst ^^).


Quote:
Originally Posted by Mostey View Post
Vielleicht, du kommst aber ohne ein weiteres Fenster nicht weiter.
Damit hätte ich auch kein Problem.
Soll halt wie gesagt so sein, wie die Steam Nachrichten, die immer auftauchen.
GodHacker is offline  
Old 05/06/2014, 17:48   #6


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Quote:
Originally Posted by GodHacker View Post
Hast du vllt ein paar beispiele von solchen Frameworks und Architekturpattern? Würde mit vllt helfen, dass ich direkt den richtigen Einstieg in WPF mache (und interessieren tut es mich jetzt sowieso, wenn du es schon so schön erwähnst ^^).




Damit hätte ich auch kein Problem.
Soll halt wie gesagt so sein, wie die Steam Nachrichten, die immer auftauchen.
Caliburn.Micro nutze ich derzeit für meine Projekte. Simpel und erleichtert einem die Nutzung sehr.

Die haben endlich ne vernünftige Dokumentation hinterhergeschoben.

Von WinForms zu MVVM:
Mostey is offline  
Old 05/06/2014, 18:30   #7
 
elite*gold: 10
Join Date: Aug 2012
Posts: 813
Received Thanks: 106
Das sieht schon nice aus. ^^
Jetzt bleibt nur noch 1 Problem...
Wie kann ich ein Overlay erstellen, welches permanent (sowohl beim Desktop u. Programmen als auch Fullscreen-Spielen) da ist und wie man darauf dann das Fenster an einer Position öffnet.

Habe jetzt schon viel danach gesucht und finde immer nur, dass man eine dll injekten soll (was aber ggf. dann von Schutzsystemen von Spielen entdeckt wird und es dann ggf. sperren gibt, da es nicht erlaubt ist) oder indem man es per DirectX macht, wo ich aber keine Ahnung habe wie und ob es dann immer da ist.
GodHacker is offline  
Old 05/06/2014, 18:43   #8


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Kannst dich ja hier der Diskussion anschließen:

Da geht's um dein Vorhaben. Ich halte von TopMost zwar nichts um etwas dergleichen umzusetzen, möglich scheint es aber trotzdem zu sein. Sieht halt wahrscheinlich nicht so schön aus, wie wenn du es über DirectX zeichnest.
Mostey is offline  
Old 05/06/2014, 19:42   #9
 
elite*gold: 10
Join Date: Aug 2012
Posts: 813
Received Thanks: 106
Quote:
Originally Posted by Mostey View Post
Kannst dich ja hier der Diskussion anschließen:

Da geht's um dein Vorhaben. Ich halte von TopMost zwar nichts um etwas dergleichen umzusetzen, möglich scheint es aber trotzdem zu sein. Sieht halt wahrscheinlich nicht so schön aus, wie wenn du es über DirectX zeichnest.
Ja davon habe ich auch gelesen, aber direkt wieder verworfen, da es nichts bringt (rein logisch gesehen, von dem was ich gelesen habe).
Hier mal ein Link: (Post #6 meine ich)
GodHacker is offline  
Old 05/06/2014, 20:40   #10


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Ich glaube kaum das so gehandelt wird. Ich denke, dass das OS eine TopMost Benachrichtigung bekommt und das alte Fensterhandle kickt und dafür das neue reinhaut und eben dafür das Flag setzt.

Das klingt für mich plausibler als das, was er da schreibt.

Auf die Schnelle habe ich auch nichts in Google gefunden, überall wird nur danach gefragt aber entweder kommt da keine Antwort oder es heißt, das DirectX auch trotz TopMost davor angezeigt wird.

Wenn man mal wüsste, wie DirectX da genau arbeitet. An sich weiß ich, das die Scene alle n FPS geupdated wird. Ich kann mir sehr gut vorstellen, das dabei automatisch das TopMost Flag gesetzt wird, wenn die App im Vordergrund läuft und das deine zweite App quasi sofort unterdrückt wird.
Mostey is offline  
Old 05/07/2014, 00:34   #11
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
über fullscreen spiele kannst du kein fenster legen. Im windowed mode geht das(viele spiele bieten da auc eine borderless option)
steam macht das mit einer dll. mit einer eigenen besteht die gefahr gebannt zu werden.
YatoDev is offline  
Old 05/07/2014, 00:54   #12
 
elite*gold: 10
Join Date: Aug 2012
Posts: 813
Received Thanks: 106
Quote:
Originally Posted by Mostey View Post
Ich glaube kaum das so gehandelt wird. Ich denke, dass das OS eine TopMost Benachrichtigung bekommt und das alte Fensterhandle kickt und dafür das neue reinhaut und eben dafür das Flag setzt.

Das klingt für mich plausibler als das, was er da schreibt.

Auf die Schnelle habe ich auch nichts in Google gefunden, überall wird nur danach gefragt aber entweder kommt da keine Antwort oder es heißt, das DirectX auch trotz TopMost davor angezeigt wird.

Wenn man mal wüsste, wie DirectX da genau arbeitet. An sich weiß ich, das die Scene alle n FPS geupdated wird. Ich kann mir sehr gut vorstellen, das dabei automatisch das TopMost Flag gesetzt wird, wenn die App im Vordergrund läuft und das deine zweite App quasi sofort unterdrückt wird.
Klingt wirklich einläuchtender.

Quote:
Originally Posted by »FlutterShy™ View Post
über fullscreen spiele kannst du kein fenster legen. Im windowed mode geht das(viele spiele bieten da auc eine borderless option)
steam macht das mit einer dll. mit einer eigenen besteht die gefahr gebannt zu werden.
Wenn ich es richtig verstehe kann man kein Overlay über ein Fullscreen-Spiel legen auf dem man dann das Fenster startet. Somit muss man es per Dll-Injection machen korrekt?
GodHacker is offline  
Old 05/07/2014, 12:43   #13
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
Quote:
Originally Posted by GodHacker View Post
Wenn ich es richtig verstehe kann man kein Overlay über ein Fullscreen-Spiel legen auf dem man dann das Fenster startet. Somit muss man es per Dll-Injection machen korrekt?
ja. du kannst auch nicht mit gdi+ draufmalen da das spiel kein fenster ist
YatoDev is offline  
Old 05/07/2014, 12:47   #14


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Quote:
Originally Posted by »FlutterShy™ View Post
ja. du kannst auch nicht mit gdi+ draufmalen da das spiel kein fenster ist
Wieso sollte es kein Fenster sein?
Mostey is offline  
Old 05/07/2014, 14:41   #15
 
elite*gold: 10
Join Date: Aug 2012
Posts: 813
Received Thanks: 106
Quote:
Originally Posted by Mostey View Post
Wieso sollte es kein Fenster sein?
Das würde ich nun aber auch gerne wissen...
GodHacker is offline  
Reply


Similar Threads Similar Threads
[QUEST] Wie die Position des Say()-Fensters ändern
12/27/2012 - Metin2 Private Server - 4 Replies
Hey, wie der Titel sagt, suche ich etwas (eine Funktion / einen Weg) um die Position von einem mit Say() erzeugtem Fenster zu ändern. Ich dachte eigentlich es gäbe so etwas wie "say_position(x, y)" doch leider ist dies nicht der Fall bzw. ich habe keine solche Funktion gefunden. Ich hoffe mal, jemand weiß da was ;) Mfg, Destroyer446
[S]Programm zur aufnahme des WoW Fensters
01/08/2012 - World of Warcraft - 2 Replies
Naja ich glaube der Titel sagt alles^^
Größe des Fensters einstellen ?
05/05/2011 - Technical Support - 3 Replies
Hallo, ich habe ein sehr großes problem. Ich Spiele Digimon Masters Online und ich wollte es nicht im Vollbild Modus Spielen. Also habe ich es auf Fenstermodus umgestellt und es auf 1280 x 460 gestellt, oder soetwas in der art. Nur ist das Fenster jezt zu klein und ich kann es nicht zurück stellen.. Warum ? Ganz einfach, das Fenster ist zu klein, ich kann es zwar wieder auf Standart stellen aber nicht auf " Okay " klicken, da das Okay zu weit unten ist und ich es nichtmehr sehe.. Ich habe es...
MEtin2 Probleme mit Starten mehreren Fensters
01/06/2011 - Metin2 - 27 Replies
Ich kann mehrere Metin Fenster öfnnen aber kriege andauernt Kik ! Und bei einen Char also Fenster Wenn cih einlogge loggt er ein , Wähle Charackter aus , Lädt udn ddann ist er direkt wieder bei der Serverauswahl ! Und das Passiert zu oft und nevrt dermaßen !!!!!!!!!!!!!!!!!!!! Wer hatte auch dasProblem ? Nehme Jede Bermerkung an Brauche dringend Hilfe ! Kan jan Video machen aber ich weis nciht welches Programm ich benutzen sollte.
name des metin2 fensters
03/26/2010 - Metin2 Private Server - 4 Replies
ich wollte mal frage mit welchem py datei man den fenster namen änder ich denk mal mit der root datei aber welche genau hab root entpackt und brauche eure hilfe



All times are GMT +2. The time now is 04:32.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.