Autor Beitrag
ebber
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 239
Erhaltene Danke: 1

Win XP, Win 7
C# (VS 2010), Delphi (2007), Expression 4
BeitragVerfasst: Mo 24.03.08 20:14 
Hallo

ich habe einen Form mit XAML aber der fehlt irgendwie die Handle Eigenschaft. Gibts die nicht oder wo ist die hin? Irgendwie kann ich da bei nichts ein Handle finden auch nicht bei Buttons...

MfG
Chryzler
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1097
Erhaltene Danke: 2



BeitragVerfasst: Mo 24.03.08 20:22 
Mittels new System.Windows.Interop.WindowInteropHelper(control).Handle bekommst du das Handle des angegebenen Controls. ;)
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Di 25.03.08 10:33 
user profile iconChryzler hat folgendes geschrieben:
Mittels new System.Windows.Interop.WindowInteropHelper(control).Handle bekommst du das Handle des angegebenen Controls. ;)
Was denkst du, weshalb die Klasse WindowInteropHelper heißt :P ? Der Konstruktor nimmt nur Window-Instanzen entgegen, schließlich ist ein Window in einem WPF-Programm das einzige Control, das noch ein altmodisches Win32-Handle besitzt [*].

@ebber: Die obligatorische Frage ;) : Wofür?

[*]Dazu kommen noch ein paar spezielle Controls wie Menüs und Popups, denn die müssen schließlich über den Fensterrand hinausragen können.
ebber Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 239
Erhaltene Danke: 1

Win XP, Win 7
C# (VS 2010), Delphi (2007), Expression 4
BeitragVerfasst: Mi 16.04.08 22:07 
Hallo

also das ganze funktioniert so eigentlich.

Ich wollte damit mein Fenster ohne Rahmen verschieben mit

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
private void Window_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
        {
            {
                ReleaseCapture();
                SendMessage(handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
            }
        }


Wird wohl nicht die beste Lösung sein, aber es funktioniert.

MfG

PS: Ich habe mal versucht nicht zu erwähnen, dass ich ein wenig spät auf die Frage antworte. Hab die irgendwie aus den Augen verloren. :oops: