C# 绑定Microsoft功能区快速访问按钮
我使用微软的功能区。我尝试将QuickAccessButtons绑定到ViewModel的属性,以便在应用程序关闭前保存按钮,并在下次启动后加载。 我的问题是,在使用ItemsSource时,我收到的错误消息C# 绑定Microsoft功能区快速访问按钮,c#,wpf,binding,ribbon,C#,Wpf,Binding,Ribbon,我使用微软的功能区。我尝试将QuickAccessButtons绑定到ViewModel的属性,以便在应用程序关闭前保存按钮,并在下次启动后加载。 我的问题是,在使用ItemsSource时,我收到的错误消息操作无效。使用ItemsControl.ItemsSource访问和修改元素。如果我尝试使用RibbonButtons的Contextmenu向QuickAccessToolbar添加新按钮。Visual Studio的调试器在选项卡Source Not Available中停止,其内容为调
操作无效。使用ItemsControl.ItemsSource访问和修改元素。
如果我尝试使用RibbonButtons的Contextmenu向QuickAccessToolbar添加新按钮。Visual Studio的调试器在选项卡Source Not Available
中停止,其内容为调用堆栈仅包含外部代码。
如果改用ItemsControl.ItemsSource,则不会出现错误,但绑定也不起作用。
如果我使用direct ItemsSource绑定并将binded ObservableCollection中的一些RibbonButtons设置为默认值,则会显示它们。因此,它是正确的财产
我的XAML代码如下所示:
<Ribbon Name="ribMain" SelectedIndex="0" Grid.Row="0" IsMinimized="{Binding IsRibbonMinimized}">
<!-- The Quick-Buttons in the Titlebar of the Window -->
<Ribbon.QuickAccessToolBar>
<RibbonQuickAccessToolBar ItemsSource="{Binding QuickAccessButtons, Mode=TwoWay}">
<!-- Quick-Access-Buttons here-->
</RibbonQuickAccessToolBar>
</Ribbon.QuickAccessToolBar>
<!-- ... -->
</Ribbon>
DataContext是通过使用
<RibbonWindow.DataContext>
<local:ViewModelMain />
</RibbonWindow.DataContext>
ViewModeMain中的属性定义如下:
private ObservableCollection<RibbonButton> _QuickAccessButtons = new ObservableCollection<RibbonButton>(){new RibbonButton()};
public ObservableCollection<RibbonButton> QuickAccessButtons
{
get { return _QuickAccessButtons; }
set
{
_QuickAccessButtons = value;
RaisePropertyChanged("QuickAccessButtons");
}
}
private observeCollection\u QuickAccessButtons=new observeCollection(){new RibbonButton()};
公共可观察收集快速访问按钮
{
获取{return\u QuickAccessButtons;}
设置
{
_QuickAccessButtons=值;
RaisePropertyChanged(“快速访问按钮”);
}
}
有人知道我能做什么吗