C# 绑定Microsoft功能区快速访问按钮

C# 绑定Microsoft功能区快速访问按钮,c#,wpf,binding,ribbon,C#,Wpf,Binding,Ribbon,我使用微软的功能区。我尝试将QuickAccessButtons绑定到ViewModel的属性,以便在应用程序关闭前保存按钮,并在下次启动后加载。 我的问题是,在使用ItemsSource时,我收到的错误消息操作无效。使用ItemsControl.ItemsSource访问和修改元素。如果我尝试使用RibbonButtons的Contextmenu向QuickAccessToolbar添加新按钮。Visual Studio的调试器在选项卡Source Not Available中停止,其内容为调

我使用微软的功能区。我尝试将QuickAccessButtons绑定到ViewModel的属性,以便在应用程序关闭前保存按钮,并在下次启动后加载。 我的问题是,在使用ItemsSource时,我收到的错误消息
操作无效。使用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(“快速访问按钮”);
}
}
有人知道我能做什么吗