Próbuję utworzyć formularz, który będzie animował coś podczas przetwarzania określonego zadania (przekazywany jako delegat do konstruktora). Działa to dobrze, ale problem, który mam, polega na tym, że nie mogę utworzyć egzemplarza mojej klasy ogólnej, jeśli konkretna metoda, którą chcę wykonać, ma typ pustej przestrzeni.Podawanie pustej przestrzeni do ogólnej klasy
Rozumiem, że jest to zgodne z projektem i wszystkim, ale zastanawiam się, czy istnieje znane rozwiązanie tego typu sytuacji.
Jeśli to pomaga na wszystkich moich okien forma wygląda jak tak (przycięte na zwięzłość):
public partial class operatingWindow<T> : Form
{
public delegate T Operation();
private Operation m_Operation;
private T m_ReturnValue;
public T ValueReturned { get { return m_ReturnValue; } }
public operatingWindow(Operation operation) { /*...*/ }
}
A ja nazywam się podoba:
operatingWindow<int> processing = new operatingWindow<int>(new operatingWindow<int>.Operation(this.doStuff));
processing.ShowDialog();
// ...
private int doStuff()
{
Thread.Sleep(3000);
return 0;
}