从WPF设置窗口标题

如果我有一个UserControl托pipe在Window ,如下所示:

 <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" > <Grid> <ContentPresenter Content="{Binding}" /> </Grid> </Window> 

如何从UserControl设置Window.Title

另一个要求是UserControl可以从一个静态的resx文件中拉取和设置窗口标题,例如{x:Static p:Resources.MyViewTitle}

编辑

在做了更多的研究后,我认为附加属性可能是答案。 我怎么能实现一个Window.Title属性,我可以放在任何子UserControl ,允许我设置Window标题?

(未经测试):使用VisualTreeHelper.GetParent向上遍历可视化树,直到到达Window类型的对象。 然后将标题设置为Resources.ResxFileName.MyViewTitle (由于自动生成的资源类应该在代码中可用)。

答案是创建一个附加的属性。 请参阅: 创建Window.Title附加属性

您可以为父窗口订阅的UserControl创建一个事件。