Ik heb de volgende code:
Het knelt daar bij lblNews. Dat label maakt deel uit van de klasse frmNewsticker en heeft dus geen betekenis binnen NewsTicker. Hoe kan ik toegang krijgen tot dat label binnen NewsTicker zodat ik de tekst van lblNews alsnog kan wijzigen? Is het veiliger om dit via een functie SetTicker te laten doen die zich binnen frmNewsticker bevindt dan om lblNews beschikbaar te maken voor alle klassen?
Code:
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 NewsTicker
{
public partial class frmNewsticker : Form
{
public frmNewsticker()
{
InitializeComponent();
}
private void frmNewsticker_Load(object sender, EventArgs e)
{
NewsTicker news1 = new NewsTicker() { NewsText = "De kat krabt de krollen van de trap." };
}
}
public class NewsTicker
{
public string NewsText;
public int i;
public Timer time;
public NewsTicker()
{
time.Enabled = false;
time.Tick += new System.EventHandler(OnTimerEvent);
NewsTick();
}
public void NewsTick()
{
while (i <= NewsText.Length)
{
[B]lblNews.Text = NewsText.Substring(0, i);[/B]
time.Interval = 500;
time.Enabled = true;
}
}
public void OnTimerEvent(object source, EventArgs e)
{
time.Enabled = false;
NewsTick();
}
}
}
Het knelt daar bij lblNews. Dat label maakt deel uit van de klasse frmNewsticker en heeft dus geen betekenis binnen NewsTicker. Hoe kan ik toegang krijgen tot dat label binnen NewsTicker zodat ik de tekst van lblNews alsnog kan wijzigen? Is het veiliger om dit via een functie SetTicker te laten doen die zich binnen frmNewsticker bevindt dan om lblNews beschikbaar te maken voor alle klassen?