| | |
| | | InitializeComponent(); |
| | | } |
| | | |
| | | public SingleCell(string parentName, int index,int maxSize) |
| | | public SingleCell(string parentName, int index, int maxSize) |
| | | { |
| | | this.parentName = parentName; |
| | | this.index = index; |
| | |
| | | if (window != null) window.UpdateSource(this.infos); |
| | | } |
| | | |
| | | public void SetInfos(string[,] infos) |
| | | { |
| | | var data = new ObservableCollection<Info>(); |
| | | for (int i = 0; i < infos.GetLength(0); i++) |
| | | { |
| | | data.Add(new Info |
| | | { |
| | | step = infos[i, 0], |
| | | result = infos[i, 1] |
| | | }); |
| | | } |
| | | this.infos = data; |
| | | if (window != null) window.UpdateSource(this.infos); |
| | | } |
| | | |
| | | public void SetInfos(Info info) |
| | | { |
| | | if (queue.Count >= maxSize) |
| | | { |
| | | queue.TryDequeue(out var first); |
| | | queue.Enqueue(info); |
| | | this.infos = new ObservableCollection<Info>(queue); |
| | | if (window != null) window.UpdateSource(this.infos); |
| | | } |
| | | queue.Enqueue(info); |
| | | var list = new ObservableCollection<Info>(queue); |
| | | this.infos = list; |
| | | if (window != null) window.UpdateSource(this.infos); |
| | | else |
| | | { |
| | | queue.Enqueue(info); |
| | | if (window != null) |
| | | { |
| | | window.Dispatcher.Invoke(() => |
| | | { |
| | | this.infos.Add(info); |
| | | }); |
| | | } |
| | | else |
| | | { |
| | | Dispatcher.Invoke(() => |
| | | { |
| | | this.infos.Add(info); |
| | | }); |
| | | } |
| | | return; |
| | | } |
| | | } |
| | | |
| | | public void ClearInfo() |
| | |
| | | if (window != null) window.UpdateSource(this.infos); |
| | | } |
| | | |
| | | public void SetInfos(string step, string result) |
| | | { |
| | | if (queue.Count >= maxSize) |
| | | { |
| | | queue.TryDequeue(out var info); |
| | | } |
| | | queue.Enqueue(new Info() { step = step, result = result }); |
| | | var list = new ObservableCollection<Info>(queue); |
| | | this.infos = list; |
| | | if (window != null) window.UpdateSource(this.infos); |
| | | } |
| | | } |
| | | } |