/// <summary> /// Get symbols (variables) from PLC /// </summary> private void GetSymbols() { Symbols.Clear(); foreach (ISymbol symbol in _symbolLoader.Symbols) { Tc3Symbols.AddSymbolRecursive(Symbols, symbol); } }
private void RefreshDataTimerOnTick(object sender, EventArgs eventArgs) { //Stopwatch sw = Stopwatch.StartNew(); if (_scrollViewer == null) { return; } for (int i = 0; i < (int)_scrollViewer.ViewportHeight; i++) { SymbolInfo symbol = SymbolListViewItems[(int)_scrollViewer.VerticalOffset + i]; SymbolListViewItems[(int)_scrollViewer.VerticalOffset + i].CurrentValue = Tc3Symbols.GetSymbolValue(symbol, _plcConnections[_activePlc].Connection); } //Debug.WriteLine($"Collecting data from PLC for ListView: {sw.Elapsed}"); }