Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > WPF и Silverlight > Как раскрасить нажатую кнопку?


Автор: Stas123 8.7.2011, 11:11
Как раскрасить нажатую кнопку?
Не нужно как-то отметить то, что кнопка нажата.
Может быть раскрасить её Background, но он не виден ,когда она нажата (IsEnabled = false).
Если красить текст, он не очень выделяется на фоне нажатой кнопки.
Или может обвести её рамкой? Есть такая возможность?

IsEnabled = false не предлагйте, это не очеь выделяет нажатую кнопку.

Автор: Rohoss 8.7.2011, 11:53
Цитата(Stas123 @  8.7.2011,  11:11 Найти цитируемый пост)
Как раскрасить нажатую кнопку?
Не нужно как-то отметить то, что кнопка нажата.
Может быть раскрасить её Background, но он не виден ,когда она нажата (IsEnabled = false).
Если красить текст, он не очень выделяется на фоне нажатой кнопки.
Или может обвести её рамкой? Есть такая возможность?

Переопределяй шаблон кнопки

Автор: Stas123 8.7.2011, 12:27
Не умею.
Может есть способ по проще?

Автор: Rohoss 8.7.2011, 12:31
Цитата(Stas123 @  8.7.2011,  12:27 Найти цитируемый пост)
Не умею.

Учись

Цитата(Stas123 @  8.7.2011,  12:27 Найти цитируемый пост)
Может есть способ по проще?

Может и есть, но навряд ли есть способ правильней 

Автор: DmitriyS 9.7.2011, 21:26
XAML
<Button MouseDown="OnDown" MouseUp="OnUp" .../>

Code
private void OnDown(object sender, ...)
{
   Button b=sender as Button;
   b.Background= ... //some color
}

private void OnUp(object sender, ...)
{
   Button b=sender as Button;
   b.Background=... // color
}

Но лучше и правильнее использовать Style и Trigger

Автор: Stas123 11.7.2011, 09:34
DmitriyS, спасибо за совет, но мне не нужно перекрашивать Background. Он не виден, когда кнопка в нажатом положении.

Автор: ДобренькийПапаша 11.7.2011, 13:09
Цитата(Rohoss @  8.7.2011,  12:31 Найти цитируемый пост)

Может и есть, но навряд ли есть способ правильней  

А триггер не прокатит что-ли?

Автор: DmitriyS 11.7.2011, 20:53
Цитата

DmitriyS, спасибо за совет, но мне не нужно перекрашивать Background. Он не виден, когда кнопка в нажатом положении.


 smile 
Ты можешь использовать любое свойство которое есть в Button. Главное, реакция на нажатие и отпускание.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)