1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программирован. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление
  2. Чат codeby в telegram перезагрузка. Обсуждаем вопросы информационной безопасности и методы защиты информации, программирование. Задавайте свои вопросы и комментируйте чужие. Подробнее ...

    Скрыть объявление

Работа с коммандами

Тема в разделе ".NET - программирование", создана пользователем iceheart, 16 июн 2008.

  1. iceheart

    iceheart Гость

    Репутация:
    0
    Пытаюсь использовать команды для форматирования текста. Не получается.
    Во-первых, в документации написано, что мне нужно просто установить свойство (или событие?) Command моего объекта-отправителя на нужную мне команду, например toolbar1.button1.Command = EditingCommands.ToggleBold. Но этого свойства (события?) у нужного мне элемента управления (а именно, кнопки на ToolStrip) нет. Остаётся вызвать команду вручную, то есть (я думаю) EditingCommands.ToggleBold.Execute( ?, ? ), но как ни вчитываюсь, не могу разобраться с параметрами этой функции. Первый параметр, я так понимаю, можно опустить, но что собой представляет второй? Элемент управления, над которым будет команда выполняться, компилятор кушать не хочет. Если туда поставить null, всё прекрасно запускается, но ничего не работает.
    Задача в двух словах: сделать, чтобы кнопка на панели инструментов включала и выключала полужирный. В доке приведён пример точно такой же задачи, но там активно используется XAML, а я о нём ничего не знаю :rolleyes:

    Вопросы:
    1. Почему обещанного свойства (события?) Command у кнопочки нету? Может я не подключил какой reference? С грехом пополам добился, чтобы хотябы EditingCommands компилятор видел, подключил для этого (через Project->Add Reference...) PresentationCore и PresentationFramework. Может быть, чего-то ещё не хватает?
    2. Как вызывать команду вручную - на элемент управления класса RichTextBox?
     
  2. Pasha

    Pasha Гость

    Репутация:
    0
    iceheart
    Модель свойств и событий WPF не использует свойства и события CLR/C#. Если коротко, то тебе надо сделать следующее:
    1. Определить у кнопки св-во Command. Оно есть у обычного Button. Если у тебя button необчыный - то в его click нужно выполнить команду ручками - EditingCommands.ToggleBold.Execute(null, button1) или просто Execute(null).
    2. Задать у окна Command Binding для EditingCommands.ToggleBold и у этого биндинга в Executed менять bold для текстбокса.
    А еще лучше - взять книжку макдональда и разобратся с моделью команд.
     
Загрузка...
Похожие Темы - Работа коммандами
  1. fan92rus
    Ответов:
    4
    Просмотров:
    58
  2. erlan1749
    Ответов:
    10
    Просмотров:
    113
  3. ghostik
    Ответов:
    6
    Просмотров:
    315
  4. nerfy
    Ответов:
    15
    Просмотров:
    158
  5. Васян
    Ответов:
    6
    Просмотров:
    159

Поделиться этой страницей