В WindowViewModel Есть свойство с именем statusBar
В StatusBarViewModel есть свойство с именем public BatteryIndicatorViewModel batIndicatorViewModel
В BatteryIndicatorViewModel есть свойство с именем public bool IsLowBattery
*
Свойство IsLowBattery привязано к CheckBox в window2 и привязано к WindowViewModel
<CheckBox IsChecked="{Binding Path=statusBar.batIndicatorViewModel.IsLowBattery}" Content="Low Battery" Grid.Column="2" Margin="0,0,34.743,14.04" Grid.Row="1" />
Отображается следующая ошибка: - Ошибка System.Windows.Data: 39: Ошибка пути BindingExpression: 'statusBar'свойство не найдено в' объекте '' 'StatusBarViewModel' (HashCode = 25431989) '.BindingExpression: Path = statusBar.batIndicatorViewModel.IsLowBattery;DataItem = 'StatusBarViewModel' (HashCode = 25431989);Целевым элементом является ContentControl (Name = '');Свойство target - «NoTarget» (тип «Объект»)
Код .....
Window2.xaml .. У меня есть HeaderedItemsControl в Window2.xaml, который связан срабочие пространства
<Grid>
<HeaderedItemsControl ItemsSource="{Binding Path=Workspaces}" Header="StatusBar" />
<CheckBox IsChecked="{Binding statusBar.batIndicatorViewModel.IsLowBattery}" Content="Low Battery" Grid.Column="2" Margin="0,0,34.743,14.04" Grid.Row="1" />
<CheckBox IsChecked="{Binding statusBar.batIndicatorViewModel.IsCharging}" Content="Charging" Grid.Column="1" Grid.ColumnSpan="2" Height="15.96" Margin="5.76,0,48.67,0" Grid.Row="2" VerticalAlignment="Top" />
</Grid>
WindowViewModel.cs ..
WindowViewModel, привязанный к текстовому тексту window2
public class WindowViewModel:WorkspaceViewModel
{
public ObservableCollection<WorkspaceViewModel> Workspaces
public StatusBarViewModel StatusBarVM;
private void ShowStatusBar()
{
StatusBarVM = new StatusBarViewModel();
this.Workspaces.Add(StatusBarVM);
this.SetActiveWorkspace(StatusBarVM);
}
StatusBar.xaml ..
<usercontrol>
<Grid Background="Black" Height="20" Width="240">
<vw:BatteryIndicator Height="20" Width="30" IsTabStop="False" VerticalAlignment="Top" HorizontalAlignment="Right" Grid.Column="1"/>
<!—some other usercontrols are used here -- >
</Grid>
</UserControl>
StatusBarViewModel.cs ..
public class StatusBarViewModel : WorkspaceViewModel
{
public BatteryIndicatorViewModel BatteryIndicatorVM;
}
BatteryIndicatorViewModel.cs ..
public class BatteryIndicatorViewModel : WorkspaceViewModel
{
Public bool IsCharging;
public bool IsLowBattery;
}
Теперь мой вопрос заключается в том, как связать IsCharging в BatteryIndicatorViewModel с флажком низкого уровня заряда батареи в windowviewmodel