ObvservableCollection で変更した値に ListView を変更しようとしています。
私は現在これを使用しており、コレクションをListViewにバインドしています
private ObservableCollection<Task> _tasks = TaskInit.TaskCollection;
/// <summary>
/// Observable Collection to hold all tasks
/// </summary>
///
public ObservableCollection<Task> TasksCollection
{
get { return _tasks; }
set
{
_tasks = value;
NotifyPropertyChanged("TasksCollection");
}
}
問題は、次のコードを使用する場合です。
TaskInit.TasksCollection[2].TaskNumber = "hi";
値は変更されているはずですが、以前と同じままです。
誰かが私が作ったかもしれない問題を指摘できますか?
xaml の最初の行は次のとおりです。
<ListView SelectionMode="Single" ScrollViewer.CanContentScroll="True" x:Name="listTasks" Margin="0,0,0,35" Background="{x:Null}" BorderBrush="{x:Null}" ItemsSource="{Binding TasksCollection, Mode=TwoWay}" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Auto" BorderThickness="0" FontFamily="Myriad Pro" Foreground="{x:Null}" IsSynchronizedWithCurrentItem="True">
タスク クラス:
public class Task : INotifyPropertyChanged
{
/// <summary>
///
/// </summary>
public string Module { get; set; }
/// <summary>
///
/// </summary>
public string FirstValue { get; set; }
/// <summary>
///
/// </summary>
public string SecondValue { get; set; }
/// <summary>
///
/// </summary>
public string ThirdValue { get; set; }
/// <summary>
///
/// </summary>
public int Minutes { get; set; }
/// <summary>
///
/// </summary>
public string TaskNumber { get; set; }
/// <summary>
///
/// </summary>
public string Story1 { get; set; }
/// <summary>
///
/// </summary>
public string Story2 { get; set; }
/// <summary>
///
/// </summary>
public string Story3 { get; set; }
/// <summary>
///
/// </summary>
public string NetworkAdapter { get; set; }
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName));
}
}