So I've made an event which execute some code that adds a item to a listview, but it doesn't add an item to a listview nor I can't change any other controls on the form like label etc..
But it does work with a messagebox, How strange is that...?
Piece of code from the form:
public void OnConnect(Client client)
{
MessageBox.Show("this works");
lvClients.Items.Add("this doesnt work");
}
public void OnDisconnect(Client client)
{
}
private void listenToolStripMenuItem_Click(object sender, EventArgs e)
{
Port port = new Port();
if (port.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
Server server = new Server();
server.connect += new Server.ClientConnected(OnConnect);
server.disconnect += new Server.ClientDisconnected(OnDisconnect);
server.ConnectionKey = "12344567";
server.Port = int.Parse(port.txtPort.Text);
server.MaxConnections = 1000;
server.Listen();
}
}piece of code from the other class (created events):
public delegate void ClientDisconnected(Client client);
public event ClientDisconnected disconnect;
public delegate void ClientConnected(Client client);
public event ClientConnected connect;
public int Port
{
get;
set;
}
public int MaxConnections
{
get;
set;
}
public string ConnectionKey
{
get;
set;
}
public void CLIENTConnected(Client client)
{
connect(client);
}
public void CLIENTDisconnected(Client client)
{
disconnect(client);
}Hope you guys can help me out! Because this very frustrating, and also: it doesnt have anything to do with cross-threading, already tried invoking with delegates.
Thanks.