Стилизация расширенного элемента управления TextBox в Windows Phone 7 - PullRequest
1 голос
/ 18 мая 2011

Абсолютно новый для создания пользовательских элементов управления в Silverlight.

Мне нужен пользовательский элемент управления, который наследуется от элемента управления TextBox.Я нашел много учебников, но все они делают что-то вроде текста с водяными знаками или других прикрепленных свойств.Моя цель - только манипулировать текстом во время ввода, используя событие KeyUp, поэтому визуально мой TextBox не отличается от стандартного TextBox.

Я создал файл класса и унаследовал от TextBox, но во время выполнениятекстовое поле не отображается.Из того, что я могу собрать, мне нужен файл themes/generic.xaml, но все примеры, которые я видел, включают в себя стили для дополнительных свойств, и по своему незнанию я не знаю, что изменить и / или удалить.

Я надеюсь, что кто-то может подсказать мне общее определение стиля TextBox в стиле «простой Джейн» или учебник такого рода.

1 Ответ

1 голос
/ 18 мая 2011

То, что вы описали, должно работать, я просто попробовал следующее, и TextBoxEx рендерит очень хорошо:

public class TextBoxEx : TextBox
{
  protected override void OnKeyUp(KeyEventArgs e)
  {
    base.OnKeyUp(e);
  }
}

Вам не нужно добавлять generic.xaml файл.Этот файл используется для предоставления шаблона, который определяет внешний вид вашего элемента управления.Вы определяете внешний вид вашего элемента управления по умолчанию, устанавливая следующее свойство:

DefaultStyleKey = typeof(MyControl);

Однако, так как вышеупомянутый TextBoxEx не устанавливает это свойство, он использует значение, унаследованное от TextBox, и, следовательно, он наследует тот же шаблон (т.е. посмотри).

...