如何在app.xaml 中全局设置文本框的属性

我正在编写一个应用程序而且我有所有逻辑,但是从前端的角度来看有一些我不太熟悉的工作。

我已经学会了如何设置所有按钮的全局设计。 我试图做文本框的方式相同。 确实应用了这个样式但是在应用这个样式后我无法在文本框中插入任何文本……我怎么能修复它? 问题是什么 ? 可能有人建议我出错了什么?

我想要做的只是在所有文本框和按钮周围制作红色细边框,而有人将鼠标放在它们上面。 还有一个combobox,我也希望以同样的方式提供服务。

这是我在App.xaml中的代码:

                     <!---->          <!---->         

编辑:按钮正常工作

! 编辑2:

我试图在我的路上修复combobox,但是任何与ControlTemplate的组合都没有ScrollViewer取得成功。 这是我的应用程序中唯一缺少的一个组件。 我已阅读并尝试了许多解决方案,例如: 如何在鼠标hover上设置ComboBox背景样式?

因此,我想取悦解决方案。 因为我专注于编程的逻辑部分,所以对xaml的更复杂部分的全部理解与我仅仅对一个combobox的突出显示无关。 我希望有一个combobox可以改变颜色边框,而鼠标结束则是红色,其余的combobox应该保持标准。 就是这一个属性。 我怎么可以快速改变它?

TextBox期望控件的名称为“PART_ContentHost”,它可以放置它的内容。 实际上在TextBox的默认模板中使用了ScrollViewer,因此解决的一种方法是将ContentPresenter替换为:

  

或者,您可以将Border用作内容主持人:

         

更新:为什么PART_ContentHost? 假设您是某些控件的作者。 您尝试设计控件,以便它可以与其他人提供的任何ControlTemplate一起使用。 但这并非总是可行,有时您需要模板的特定部分来匹配特定条件。 在这种情况下,TextBox的作者在其模板中找到一个控件,该控件是ScrollViewer或Decorator,并且名称为“PART_ContentHost”。 他后来对该控件的作用与我们无关:TextBox只需要名称为“PART_ContentHost”的控件在模板中以便正常运行。 控制作者如何表达这样的要求? 通过TemplatePart属性。 除了表达上述要求之外,此属性不执行任何操作。 如果你看一下TextBoxinheritance的TextBoxBase控件,你会看到:

 [TemplatePart(Name = "PART_ContentHost", Type = typeof (FrameworkElement))]