Wpf web.config绑定-ItemsControl与其项源不一致

Wpf web.config绑定-ItemsControl与其项源不一致,wpf,binding,web-config,connection-string,observablecollection,Wpf,Binding,Web Config,Connection String,Observablecollection,我正在构建一个工具来显示和编辑web.config,并希望添加一个add按钮,以便可以向web.config添加额外的connectionstring 视图模型: private ConnectionStringSettingsCollection _ConnectionStrings; public ConnectionStringSettingsCollection ConnectionStrings { get {

我正在构建一个工具来显示和编辑web.config,并希望添加一个add按钮,以便可以向web.config添加额外的connectionstring

视图模型:

    private ConnectionStringSettingsCollection _ConnectionStrings;
    public  ConnectionStringSettingsCollection ConnectionStrings
    {
        get
        {
            return _ConnectionStrings;
        }
        set
        {
            if (_ConnectionStrings != value)
            {
                _ConnectionStrings = value;
                RaisePropertyChanged("ConnectionStrings");
            }
        }
    }

    private void ExecuteAddConnectionString()
    {
        ConnectionStrings.Add(new ConnectionStringSettings("a","b","c"));

    }

    private void ReadConfig()
    {
        ConnectionStrings = config.ConnectionStrings.ConnectionStrings;
    }

    public void CreateConfig()
    {
        string webDirPath = (PathWithoutFile());
        var vdm = new VirtualDirectoryMapping(webDirPath, true, "web.config");
        var wcfm = new WebConfigurationFileMap();
        wcfm.VirtualDirectories.Add("/", vdm);
        config = WebConfigurationManager.OpenMappedWebConfiguration(wcfm, "/");
    }
视图:

因此,当我单击“添加”按钮时,会出现以下错误:

ItemsControl与其items源不一致

我知道这是因为GUI没有收到关于更改的通知,但是在我的情况下,我该如何解决它呢?我能以某种方式将字符串连接到可观察的集合吗


非常感谢

尝试使用ObservableCollection。可能重复我认为这与我遇到的问题不同。
        <TabItem Header="ConnectionString">
                <GroupBox Header="ConnectionStrings" BorderBrush="Black" BorderThickness="2" Margin="5">
                    <ListBox ItemsSource="{Binding ConnectionStrings}" Margin="5" Background="Transparent" BorderThickness="0">
                        <ListBox.ItemTemplate >
                            <DataTemplate >
                                <ContentControl >
                                    <vm:ConnectionStringAdd Width="400" Margin="5"/>
                                </ContentControl>
                            </DataTemplate>
                        </ListBox.ItemTemplate>
                    </ListBox>
                </GroupBox>
        </TabItem>