Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF-将窗口标题绑定到其他项目公共设置_C#_.net_Wpf_Xaml_Data Binding - Fatal编程技术网

C# WPF-将窗口标题绑定到其他项目公共设置

C# WPF-将窗口标题绑定到其他项目公共设置,c#,.net,wpf,xaml,data-binding,C#,.net,Wpf,Xaml,Data Binding,显然我喜欢把我的生活复杂化,但我觉得这是值得的 我有一个包含多个WPF项目的解决方案(每个项目都构建到自己的应用程序中:服务器、客户端等)。我希望在一个地方有一些设置(主要是标签,所以当我更改名称时,我不必在多个文件中找到它),所以我在it Properties.settings和这些位置(ServerName、ClientName)创建了项目“Common” 现在在Server.main窗口中,我想将Title属性设置为Common.Properties.Default.ServerName。

显然我喜欢把我的生活复杂化,但我觉得这是值得的

我有一个包含多个WPF项目的解决方案(每个项目都构建到自己的应用程序中:服务器、客户端等)。我希望在一个地方有一些设置(主要是标签,所以当我更改名称时,我不必在多个文件中找到它),所以我在it Properties.settings和这些位置(ServerName、ClientName)创建了项目“Common”

现在在Server.main窗口中,我想将Title属性设置为Common.Properties.Default.ServerName。当然是XAML。不幸的是,我不知道该怎么办

我在某处发现:

<ObjectDataProvider x:Key="odpsettings" ObjectType="{x:Type l:Properties.Settings}"></ObjectDataProvider>

基本上,它不起作用,我不知道从哪里开始…

问题是不允许执行类似于
{x:Static common:Properties.Default.ServerName}
的操作,但是只使用
{x:Static common:Properties.Default}
就可以了

因此,您只需将绑定源设置为
{x:Static common:Properties.Default}
,并在绑定路径中指定请求的键,从而避免整个不受支持的嵌套类型问题:

<Window Title="{Binding Source={x:Static common:Properties.Default}, Path=ServerName}">


属性是从设计器自动生成的,因此在代码中我将其称为:Common.Properties.Default.ServerName,所以在XAML:Title=“{x:Static Common:Properties.Default.ServerName}”中,但我得到:嵌套类型不受支持。我可以使这些属性成为具有静态属性的自定义类,但也许我没有这样做?它起作用了!非常感谢你。现在,为了让它正常工作,我必须对xmlns:xmlns:common=“clr namespace:common;assembly=common”做一个小改动
<Window Title="{Binding Source={x:Static common:Properties.Default}, Path=ServerName}">