C# UWP-如何实现完全定制的文本框

C# UWP-如何实现完全定制的文本框,c#,xaml,user-controls,uwp,uwp-xaml,C#,Xaml,User Controls,Uwp,Uwp Xaml,我想创建一个自定义文本框,如下所示: <TextBoxWithSymbol FontSize="..." FontFamily="..." PlaceholderText="Write something here..." SymbolCode="&#xE102;" /> 我知道我可以通过编辑模板和样式来完成大部分工作,但我希望能够像这样从XAML获得符号值: <TextBoxWithSymbol FontSize="..." FontFamily="..." Pl

我想创建一个自定义文本框,如下所示:

<TextBoxWithSymbol FontSize="..." FontFamily="..." PlaceholderText="Write something here..." SymbolCode="&#xE102;" />

我知道我可以通过编辑模板和样式来完成大部分工作,但我希望能够像这样从XAML获得符号值:

<TextBoxWithSymbol FontSize="..." FontFamily="..." PlaceholderText="Write something here..." SymbolCode="&#xE102;" />
p.S:


当我运行应用程序时,它可以工作,但在设计时,我看不到我的控件是什么样子(我指的是像MainPage.xaml这样的页面)。有没有办法让设计时显示出来?

A
UserControl
是其他控件的包装器。您需要的是一个
模板化控件

TextBox
派生控件,并为
SymbolCode
或任何您想要的额外属性添加您自己的依赖属性

public sealed class CustomControl1 : TextBox
{
    public CustomControl1()
    {
        this.DefaultStyleKey = typeof(CustomControl1);
    }
}

最后更改Generic.xaml中的模板以满足您的需要。从
文本框
模板开始并从那里开始工作可能最容易。

A
UserControl
是其他控件的包装。您需要的是一个
模板化控件

TextBox
派生控件,并为
SymbolCode
或任何您想要的额外属性添加您自己的依赖属性

public sealed class CustomControl1 : TextBox
{
    public CustomControl1()
    {
        this.DefaultStyleKey = typeof(CustomControl1);
    }
}

最后更改Generic.xaml中的模板以满足您的需要。从
文本框
模板开始并从模板开始工作可能最简单。

感谢您的重播。我照你说的做了,但似乎不起作用。我编辑了这篇文章以获得更多的描述。我做错什么了吗?谢谢你的重播。我照你说的做了,但似乎不起作用。我编辑了这篇文章以获得更多的描述。我做错什么了吗?
,您使用的是另一种类型。我投票将此问题作为离题题题结束,因为它可能属于oncodereview@tao这里看起来是这样的,但我将其重命名为复制这里的代码。在实际代码中,它的名称是相同的。
,您使用的是不同的类型。我投票将此问题作为离题题结束,因为它可能属于oncodereview@tao这里看起来是这样的,但我将其重命名为复制这里的代码。在实际代码中,它是相同的名称。