In WPF how do I make a button with a white border with a 5 pixel radius, a dark gray background and white text? It would be nice if it still had all the mouse over and ispressed effect too.
You would need to understand how Control Templates work in WPF. This sample on applying Control Templates on button by MSDN should get you started.
There's is also a similar SO QA that should help you.
Related
I'm using Wizard control of Extended wpf toolkit package.
I would like to change color of the border. See sky blue in image below:
I tried set broder brush\background to wizard\wizard page\window controls, but it failed.
Anybody know how to change it?
Your assistance is appreciated!
Now that you have provided more info, I can see that your question title does not match what you asking to change. You are not asking to change the color of the border of the Wizard Control, you are asking to change the color of the WPF Window.
It takes some time to get things right, and I highly discourage doing this if you app will be used by people with disabilities, who need high contrast, who customized their desktop to a certain color because of color blindness, and the list goes on...Microsoft has worked very hard to address such issues with the defaults.
BUT...you can change this by restyling your Window Style. You can find plenty of code examples.
Here are two:
Can i set the window border color in WPF?
How can I style the border and title bar of a window in WPF?
Need a quick suggestion for styling a WinForm. I made it with rounded corners even when re-sized. Now trying to add a close button with a image (ControlBox=false), overlapping or clipped to top right corner. This is what I could end with.
But I wish to make it more like in this example image.
How could I achieve this in WinForm.
Here's the trick : your window doesn't just end with the white part. It extends a little bit further. The close button comes under the 'extra' part. The other sides where the window appears to not be there is actually transparent...or in the case of the image, semi-transparent.
The glow effect is provided by the window. Set the TransparencyKey property of the window to Color.Magenta (its a convention as Magenta is the color least likely to be used in a window). Then set the background image to a white background with a little bit of Magenta in the edges. The Magenta will appear transparent when set as the background image.
Fiddle around with TransparencyKey and you'll understand what I mean
Winforms itself cannot provide this for you without outside manipulation of the windows,
because it still uses win32 windows classes in the background.
If you want transparancy in windows: see articles like:
Cool, Semi-transparent and Shaped Dialogs with Standard Controls
And the method in Win32 to do it:
SetLayeredWindowAttributes
Is there a way to change the flow direction of the slider for the vertical orientation? If not, is there a way to change the background color to a color without it having that weird shaded effect? I want the bright color of the slider to be on top and the shaded portion to be on the bottom.
Thanks for all the great responses, but I ended up solving this one on my own. After much research, I finally discovered that I should edit the slider's template and that it can be easily done in Expression Blend. I found a pretty good tutorial for editing templates here. Once I started editing the template, I went to the vertical fill portion of the vertical slider and changed the transparency to 20% and changed the vertical track portion of the the vertical slider to 100%. This is where the shaded effect comes from. Then, I just switched the Fill properties for the vertical fill and the vertical track, so that the top part would be referenced by the slider's Foreground property and the bottom (now shaded part) would be referenced by the slider's Background property.
I am using the new Version of MS WPF Ribbon (Version MS WPF Ribbon 3.5.40729.1) with Windows 7 and I am trying to change the Background of the Ribbon. Everything looks fine if I use light background colors.
But e.g. if I choose "Black" a white gradient is shown with the black. It does not seem to be possible to remove the white and simply have a black background. And it looks ugly, especially when every Textcolor normally is white. (Tabheaders get white background and are not readable anymore)
In the samples, (I leave everything as is) if I set Background=Black directly in the ribbon's property, the effect is the same.
What do I have to set or do to get rid of the white gradient color?
There's a hard-coded gloss effect in the RibbonGroup template. It's lame, but the only way to get rid of it is to override the temlate for RibbonGroup. If you have Blend, just extract the template and rip out the offending LinearGradientBrush.
I'm changing the look of some Controls that I use in my Microsoft Surface Application at the moment. And today I'm working on a SurfaceListBox.
I have the template for it and already changed background and borders and other stuff.
But I really cannot find where I can change the color of the rectangle that appears on the ListBoxItem when you touch the ListBox. At the moment it's just white and I want to change that.
It's not something like the effect that you can see when the item is selected. I already found that and changed that so my selected item now appears in a different color. But the effect in the second when you touch the item stays white.
So where can I change this effect?
If you mean the bright, white highlight that happens when you press your finger against an item you should look into the SurfaceShadowChrome. It's used by (almost) all surface controls to give feedback when the user is pressing on a control.
It does have a Color property that you can modify to suit your needs. Apart from the color, and the tweaking of corner radius and shadow offset, it's not a very flexible decorator. But hopefully, you'll be able to make it do what you need.