Chciałbym zmienić kolor obramowania okna (obramowanie z tytułem formularza). Przykład znaleziony w codeplex jest zbyt wiele i mylący. Czy może mi pomóc coś prostszego?Jak zmienić kolor obramowania formularza C#?
Odpowiedz
Niestety, ponieważ obramowanie formularza jest rysowane przez system operacyjny, to jest skomplikowanym zadaniem. Nie ma na to realnego sposobu.
nie klikaj w link ProjectDistributor na stronie CodePlex poniżej
CodePlex Project for Drawing Custom Borders czyni to bardzo proste, choć. Po prostu zbuduj formularz za pomocą SkinnedForm z tego projektu zamiast standardowego formularza, który powinien działać - naprawdę nie musisz robić nic innego w swoim kodzie.
if (colorDialog1.ShowDialog() == DialogResult.OK)
{
string color = Convert.ToString(colorDialog1.Color);
MessageBox.Show("You change the color " + color);
this.BackColor = colorDialog1.Color; // BackColor is only accessible for this form
}
Pytanie dotyczyło koloru obramowania, a nie koloru tła. –
Poniżej ForeColor „ich” powinno być ustawienie o nazwie „FormBorderStyle” Możesz edytować go, że w VisualStudio 2015 czy można przejść w panelu sterowania ścieżki powinny być mniej więcej tak „wygląd Panel sterowania \ i personalizacja \ Personalizacja " ich drugie ustawienie o nazwie" Kolor "może zmienić to, aby był to kolor, który ma zmienić kolor granicy we wszystkich programach do ustawionego koloru.
Można ustawić FormBorderStyle None,
następnie przykryć formę z panelem i zostawić trochę miejsca na granicy,
teraz można ustawić żądany kolor za granicą jako postaci odwrotnej koloru
teraz panel służy jako główny pojemnik i możesz zmienić tło tak, jak chcesz, a formularz służy jako obramowanie!
- da Ci wyglądać tak:
Dzięki za odpowiedź Reed ... nawet z Soure dorsza z codeplex im nadal masz problem, aby zmienić kolor obramowania górną lub raczej cały kolor obramowania. – don