C# 将标签内容绑定到嵌套类中不在Datacontext中的值
我的视图(InformationView)绑定到InformationViewModel,我使用嵌套类来维护当前银行 我的嵌套类:C# 将标签内容绑定到嵌套类中不在Datacontext中的值,c#,wpf,mvvm,binding,mvvm-light,C#,Wpf,Mvvm,Binding,Mvvm Light,我的视图(InformationView)绑定到InformationViewModel,我使用嵌套类来维护当前银行 我的嵌套类: public class MainController : NotificationObject { public MainController() { Initialize(); } private void Initialize() { // TODO implement }
public class MainController : NotificationObject
{
public MainController()
{
Initialize();
}
private void Initialize()
{
// TODO implement
}
public static MainController Instance
{
get { return Nested.instance; }
}
private BankModel _currentBank;
public BankModel CurrentBank
{
get { return _currentBank; }
set
{
if (_currentBank== value)
{
return;
}
_currentBank= value;
RaisePropertyChanged(() => CurrentBank);
}
}
private class Nested
{
static Nested()
{
}
internal static readonly MainController instance = new MainController();
}
}
我的银行模型:
private string _name ="test";
public string Name
{
get
{
return _name;
}
set
{
if (_name == value)
{
return;
}
_name= value;
RaisePropertyChanged(()=>Name);
}
}
我的XAML
xmlns:Controller="clr-namespace:MyProject.Controller"
/****/
<Label Content="{Binding Controller:MainController.CurrentBank.Name}"/>
xmlns:Controller=“clr命名空间:MyProject.Controller”
/****/
首先,我看不到标签中的“test”,如果执行,我会更改此值,并且标签始终为空,我如何使用正确的方法执行此操作,您需要在绑定声明中使用“Path”和“Source”的组合。您还需要提醒绑定引擎您正在访问静态成员
<Label Content="{Binding Source={x:Static Controller:MainController.Instance}, Path=CurrentBank.Name}" />