Silverlight中自定义控件创建的全新内容。
我想要一个继承自TextBox控件的自定义控件。我发现了很多教程,但他们都做了一些像水印文本或其他附加属性的东西。我的目标只是在使用KeyUp事件时在输入时操作文本,因此我的TextBox在视觉上与标准TextBox没有区别。
我创建了一个类文件并继承自TextBox,但在运行时,文本框不会显示。从我可以收集的内容中我需要一个themes/generic.xaml
文件,但我见过的所有样本都包含其他属性的样式,而在我的无知中,我不知道要更改和/或删除的内容。
我希望有人能指出一个普通的简单TextBox风格定义或者这样的教程。
答案 0 :(得分:1)
您所描述的内容应该可以使用,我只是尝试了以下内容并且TextBoxEx渲染得很好:
public class TextBoxEx : TextBox
{
protected override void OnKeyUp(KeyEventArgs e)
{
base.OnKeyUp(e);
}
}
您无需添加generic.xaml
文件。此文件用于提供定义控件外观的模板。您可以通过设置以下属性来指定控件的默认外观:
DefaultStyleKey = typeof(MyControl);
但是,由于上面的TextBoxEx没有设置此属性,它使用从TextBox继承的值,因此它继承了相同的模板(即外观)。