Можно ли использовать RadMaskedTextBox внутри AutoCompleteBox в Silverlight / Expression Blend?
Это, вероятно, выполнимо, но с моими навыками n00b я еще не мог понять это.
Когда я пытаюсь выполнить "Make Into Part" в RadMaskedTextBox, Expression Blend жалуется, что это не TextBox.
Как я могу сделать это, чтобы использовать его в качестве надлежащего элемента управления? Могу ли я как-нибудь "typecast" в XAML?
Заранее спасибо за помощь!
2 ответа
Первый ответ правильный. В то время как вы можете вставить RadMaskedTextBox в шаблон автозаполнения (шаги ниже), внутренне он хочет видеть класс TextBox, чтобы подключить событие изменения текста. Вместо этого Telerik RadMaskedTextBox наследуется от Control, поэтому событие не подключается.
- Перетащите AutocompleteBox на свою страницу.
- Перетащите Terlerik RadMaskedTextBox на свою страницу (чтобы добавить правильное пространство имен XML для вас)
- Отредактируйте шаблон автозаполнения в Blend, чтобы создать локальный шаблон.
- Вручную отредактируйте шаблон XAML, чтобы использовать RadMaskedTextBox вместо TextBox.
- Удалите Terlerik RadMaskedTextBox
Решение состоит в том, чтобы использовать другое поле редактирования в маске, которое является производным от TextBox, и вставить его, используя описанные выше шаги.
Вы не можете использовать RadMaskedTextBox
потому что это не происходит от TextBox
, Код внутри AutoCompleteBox
указывает, что эта часть должна, по крайней мере, происходить из TextBox
,