Hallo,
ich möchte mittels Expression einen Tabellenwert berechnen, sofern zwei andere Werte <> 0 sind. Sprich ein entsprechender Wert wird im DataGridView geändert und es erfolgt eine Berechnung. Das funktioniert auch, solange ich nach der Werteingabe im DGV die Zeile verlasse. Solange ich in den Zellen der selben Zeile umherklicke, wird die Expression nicht ausgeführt. Womit ist das Ausführen einer Expression verknüpft bzw. mit welchem Event!? Gibt es Möglichkeiten dort einzugreifen, z.B. die Expression manuell auszuführen?
An welcher Stelle würde man sonst sinnvollerweise den Wert einer typisierten Tabelle berechnen lassen, in Abhängigkeit von zwei anderen Tabellenspalten? Ich hatte versucht es im RowChanged-Event der Tabelle zu machen, doch dies führte offenbar zu einer Endlosschleife (Wert geändert = Wert berechnet = Wert geändert =…).
Peterle
ich möchte mittels Expression einen Tabellenwert berechnen, sofern zwei andere Werte <> 0 sind. Sprich ein entsprechender Wert wird im DataGridView geändert und es erfolgt eine Berechnung. Das funktioniert auch, solange ich nach der Werteingabe im DGV die Zeile verlasse. Solange ich in den Zellen der selben Zeile umherklicke, wird die Expression nicht ausgeführt. Womit ist das Ausführen einer Expression verknüpft bzw. mit welchem Event!? Gibt es Möglichkeiten dort einzugreifen, z.B. die Expression manuell auszuführen?
An welcher Stelle würde man sonst sinnvollerweise den Wert einer typisierten Tabelle berechnen lassen, in Abhängigkeit von zwei anderen Tabellenspalten? Ich hatte versucht es im RowChanged-Event der Tabelle zu machen, doch dies führte offenbar zu einer Endlosschleife (Wert geändert = Wert berechnet = Wert geändert =…).
VB.NET-Quellcode
- Partial Class dsMeasurementPartial Public Class TemperaturKurvenSegmenteDataTable
- Private Sub TemperaturKurvenSegmenteDataTable_TemperaturKurvenSegmenteRowChanged(sender As Object, e As TemperaturKurvenSegmenteRowChangeEvent) Handles Me.TemperaturKurvenSegmenteRowChanged
- If e.Row.Haltezeit <> 0 And e.Row.MessIntervallRow.Messintervall <> 0 Then
- e.Row.Messwerte = CInt(e.Row.Haltezeit / e.Row.MessIntervallRow.Messintervall)
- End If
- End Sub
- End Class
- End Class
Peterle