Как изменить состояние ToggleButton IsPressed? - PullRequest
0 голосов
/ 22 сентября 2018

Я бы хотел изменить состояние IsPressed кнопки ToggleButton через C #.К сожалению, я получаю сообщение «Свойство или индексатор ButtonBase.IsPressed нельзя использовать в контексте ....».

Есть ли способ установить его с помощью кода C #?

Пример экрана

Ответы [ 2 ]

0 голосов
/ 23 сентября 2018

Вы можете расширить ToggleButton с помощью этой функции и написать свой собственный ToggleButton.

public class PressableToggelButton : ToggleButton
{
    public new bool? IsChecked
    {
        get
        {
            return base.IsChecked;
        }
        set
        {
            base.IsChecked = value;

            if(value == true)
            {
                base.IsPressed = true;
            }
            else
            {
                base.IsPressed = false;
            }
        }
    }
}

Будьте осторожны, новый IsChecked скрывает свойство base, что может привести к побочным эффектам.Пожалуйста, адаптируйте эту идею под свои нужды.

0 голосов
/ 23 сентября 2018

Имущество, которое вы ищете - IsChecked.IsPressed - это свойство ButtonBase, которое указывает, что над кнопкой нажата левая кнопка мыши или пробел.

this.MyToggleButton.IsChecked = true;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...