Покажите ContextMenu при Щелчке левой кнопкой с помощью только XAML

getInt позаботится о вводе нецелых чисел (текста и слов) и предложит пользователю ввести целое число, пока он этого не сделает.

Итак, ваш код должен быть примерно таким:

if (yes() == 1)
{
     int validNumber = 0;
     while (validNumber == 0)
     {
         printf("Please enter the contact's apartment number: ");
         address->apartmentNumber = getInt();
         if (address->apartmentNumber > 0)
         {
             validNumber = 1;
         }
         else
         {
             printf("* INVALID APARTMENT NUMBER * Please enter a positive number:\n");
         }
     }
}
7
задан Dave Clemmer 25 August 2011 в 15:20
поделиться

1 ответ

То, что я предложил бы делать, делает новый статический класс с приложенным DependencyProperty. Назовите класс LeftClickContextMenu и свойством Enabled (просто идеи). Когда Ваша регистрация DependencyProperty добавляет на измененном обратном вызове. Затем в измененном обратном вызове свойства, если Включено имеет значение true, затем добавляют обработчик к событию LeftMouseButtonDown и делают Ваш материал там. Если Включено имеет значение false, удаляют обработчик. Это должно позволить Вам устанавливать его как свойство на чем-либо путем простого использования следующего в xaml.

<Border namespace:LeftClickContextMenu.Enabled="True" />

Эту технику называют приложенным поведением, и можно читать больше об этом в этой статье проекта кода: http://www.codeproject.com/KB/WPF/AttachedBehaviors.aspx

9
ответ дан 6 December 2019 в 09:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: