13. september 2010 - 14:10Der er
10 kommentarer og 1 løsning
Delegate "Updater form object fra extern klasse"
Hej Eksperter, vil lige høre om der er nogle som kan hjælpe.
Jeg har en form klasse og en serialInterface klasse. I min form klasse er der et tekst-objekt (Angle) som skal updateres på baggrund af den modtagne data fra uarten. Denne køre i en seperat tråd.
--------- Main ------ public partial class Form1 : Form { public Form1() { InitializeComponent(); serialInterface SI = new serialInterface(); }
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Ja jeg får følgende fejlmeddelelse knyttet til klassen serialInterface.cs
Error 1 'object' does not contain a definition for 'UpdateTextBox' and no extension method 'UpdateTextBox' accepting a first argument of type 'object' could be found (are you missing a using directive or an assembly reference?)
--- Main -----------------------------------------
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); serialInterface SI = new serialInterface(this); }
public delegate void UpdateTextBoxDelegate(string message);
public void UpdateTextBox(string message) { if (Angle.InvokeRequired == true) { this.Invoke (new UpdateTextBoxDelegate(UpdateTextBox), new object[] { message }); } else { Angle.Text = message; } }
I serialinterface klassen skal du omdøbe 'sender' til 'senderform'
Altså : Form1 senderform = null;
og i 'port_DataReceived' metoden skal du så kalde 'senderform.UpdateTextBox("din tekst værdi");' i stedet for 'sender.UpdateTextBox("din tekst værdi");'.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.