Нашли ошибку или опечатку? Выделите текст и нажмите

Поменять цветовую

гамму сайта?

Поменять
Обновления сайта
и новые разделы

Рекомендовать в Google +1

Кнопки

175

Надстройка Silverlight распознает три типа простых кнопок: Button (Кнопка), CheckBox (Флажок) и RadioButton (Переключатель). Все эти элементы управления наследуют классы ButtonBase и ContentControl.

Класс ButtonBase содержит всего несколько самых необходимых членов. В нем определены событие Click и свойства IsFocused, IsMouseOver и IsPressed, имеющие статус "только чтение".

Кроме того, класс ButtonBase содержит свойство ClickMode, определяющее, когда генерируется событие Click в ответ на действие мыши. По умолчанию оно имеет значение ClickMode.Release, при котором событие Click генерируется в момент отпускания кнопки мыши. При значении ClickMode.Press событие Click генерируется в момент первого нажатия кнопки мыши. Значение ClickMode.Hover задает генерацию события Click, когда пользователь наведет указатель на кнопку и на некоторое время задержит его.

Все эти кнопки, в том числе и кнопки примитивов RepeatButton и ToggleButton являются аналогами идентичных элементов управления WPF, поэтому здесь мы их не будем рассматривать. (см. "WPF - кнопки")

Кнопка HyperlinkButton

Кнопка Button довольно простая: пользователь щелкает на ней, и она генерирует событие Click, обрабатываемое в коде. В отличие от нее, кнопка HyperlinkButton дает команду браузеру перейти к другой веб-странице и завершает текущее приложение Silverlight.

Элемент HyperlinkButton не отображает фон, как обычная кнопка. В отличие от нее, он просто выводит значение свойства Content. По умолчанию текст выводится синего цвета, не подчеркнутый. Задать подчеркивание можно с помощью свойства TextDecorations. При наведении указателя на кнопку HyperlinkButton он принимает вид руки, свидетельствуя о том, что указатель наведен на гиперссылку. По мере необходимости этот эффект можно переопределить с помощью свойства Cursor. Существуют три способа использования кнопки HyperlinkButton:

  • Перенаправление браузера на внешний веб-сайт. Для этого присвойте свойству NavigateUri абсолютный URL-адрес, указывающий на целевую веб-страницу. Можете также присвоить свойству TargetName имя фрейма, в котором нужно открыть страницу. Учитывайте, что после того, как вы покинете текущую страницу, приложение Silverlight завершит работу. По этой причине данный способ использования кнопки HyperlinkButton применяется редко.

  • Передача фрейма другой странице Silverlight. Убедитесь в том, что на странице есть элемент управления Frame, и присвойте свойству NavigateUri относительный URI-адрес, указывающий на другой файл XAML в текущем проекте.

  • Выполнение какой-либо операции в коде. Не устанавливайте свойство NavigateUri. Вместо этого создайте обработчик события Click, выполняющий нужную операцию.

Входная HTML-страница может предотвратить навигацию к внешнему веб-сайту. Для этого нужно добавить параметр enableNavigation в раздел <object> входной страницы и присвоить ему значение false. При этом останется возможность использовать HyperlinkButton для внутренней навигации по фреймам или для запуска обработчика события Click.

Ниже показан пример использования кнопки HyperlinkButton:

<StackPanel Margin="10,5">
        <TextBlock>Программирование на языке C#, платформа .NET</TextBlock>
        <HyperlinkButton HorizontalAlignment="Right" NavigateUri="http://professorweb.ru" 
                         Content="www.professorweb.ru" Margin="10" />
</StackPanel>
HyperlinkButton
Пройди тесты