Entwickler-Ecke
WPF / Silverlight - Menüpunkt ohne Rahmen bei MouseEnter
nepo - So 26.06.11 17:33
Titel: Menüpunkt ohne Rahmen bei MouseEnter
Hallo,
ich bin noch ziemlich neu in Sachen C# und wollte mich als erstes mit dem Design bei WPF/XAML beschäftigen.
Nun zu meinem Problem:
Ich hab mir ein Menü oben angelegt und habe ihm einen Hintergrund als Bild gegeben. Wenn ich nicht mit der Maus drüber bin haben die einzelnen Punkte auch keinen Rahmen. Wenn ich nun aber mit der Maus auf einen Menüpunkt fahre dann habe ich immer einen Rahmen und egal was ich mache er ist immer da.
Meine Frage ist nun was ich machen kann damit es keinen Rahmen mehr gibt bzw. dieser eine andere Farbe hat.
Zur Veranschaulichung habe ich mal ein paar Bilder erstellt:
Maus nicht über Menüpunkt:
[url=
http://www.directupload.net]
[/URL]
Maus ist über Menüpunkt:
[url=
http://www.directupload.net]
[/URL]
Hier der XAML-Code:
XML-Daten
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| <Grid> <Menu Height="23" HorizontalAlignment="Stretch" Name="menu1" VerticalAlignment="Top" > <Menu.Background> <ImageBrush ImageSource="/WpfApplication1;component/Images/Menubackground.png" /> </Menu.Background> <MenuItem Header="Test 1" MouseEnter="MenuItem_MouseEnter" MouseLeave="MenuItem_MouseLeave" Click="MenuItem_Click" BorderThickness="0" DataContext="{Binding}" Name="cmdMenuItem1" > <MenuItem Header="Test 3" /> </MenuItem> </Menu> </Grid> |
Ich hoffe ihr könnt mir helfen!
Kha - So 26.06.11 20:30
:welcome: in der EE!
Dafür musst du wahrscheinlich das ControlTemplate bearbeiten, was am besten mit Blend funktioniert. So oder so aber beileibe kein Anfänger-Thema, ich würde es mir für später aufsparen ;) .
PS:
LINEARGRADIENTBRUSH
nepo - So 26.06.11 21:17
Danke erstmal für die Antwort.
Mit dem was ich mir jetzt über deinen Link durchgelesen habe kann man ja ein ganzen Buch füllen.
Gibt es tatsächlich keine simplere Variante eine farbige Border bzw. transparente Border zu erstellen?
Ich hatte es schon im MouseEnter-Event versucht aber da bleibt ja gleich ganz ohne Wirkung.
C#-Quelltext
1: 2: 3: 4: 5: 6:
| private void MenuItem_MouseEnter(object sender, MouseEventArgs e) { cmdMenuItem1.Background = Brushes.Yellow; cmdMenuItem1.BorderBrush = Brushes.Orange; cmdMenuItem1.BorderThickness = new Thickness(3); } |
Kha - So 26.06.11 21:25
Das PS war nicht auf den Rahmen, sondern deinen ImageBrush bezogen :) . Und ja, schon mit einzelnen Themen von WPF kann man Bücher füllen.
nepo - Mo 27.06.11 00:42
Hab mir Blend 4 grad mal angeschaut. Gibt es dafür auch eine Alternative die nicht gleich 700€ kostet?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!