このソースコードの何が問題なのか誰か教えてください。ボタンをクリックすると、イスト値が更新されませんか? 最初のバインディングでは、コンバーターが仕事をします。
ソースコードはかなり大きいので、一部のみ掲載します。
XAML: インスタンスは ObservableCollection の型です
<ListBox Name="Instances">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <Button Tag="{Binding Path=Instance.Name}" Content="{Binding Path=Instance.Active, Converter={StaticResource BTSC}}" Click="ChangeAccess"/>
            <TextBlock Text="{Binding Path=Instance.Name}"/>
         </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
コンバータ:
public class BoolToStringConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        if (((Boolean)value) == true)
            return "No";
        else
            return "Yes";
    }
    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }
} 
イベント:
private void ChangeAccess(object sender, RoutedEventArgs e)
{
    for...
    if ((sender as Button).Tag.ToString() == (DP.Instances[i].Instance as CInstance).Name)
    {
        SkipIfAndElse...
        DP.Instances[i].Instance.Active = true;
    }
}
C インスタンス:
class CInstance : INotifyPropertyChanged
{
    private Boolean active;
    public Boolean Active
    {
        get { return active; }
        set
        {
            active = value;
            NotifyPropertyChanged("Access");
        }
    }
}
CInstance クラスの他のすべての値は、期待どおりに更新されています。