Когда вы передаете ссылочный тип методу, C # (по умолчанию) передает копию ссылки на метод.Это означает, что если вы передаете ссылку, которую вы имеете, своим классам, вы даете методу копию этой ссылки, и, поскольку обе копии ссылаются на один и тот же объект, и сайт вызова, и метод будут иметь доступ к одному и тому же экземпляру.* Например:
class Example
{
static void Main()
{
string s = "hello, world";
// Here we are passing a copy of the reference
// stored in "s" to "Print"
Print(s);
}
static void Print(string str)
{
// By default, "str" will be assigned the copy of the
// reference passed to this method.
Console.WriteLine(s);
}
}
Я бы тщательно создал приложение, в котором ваши доменные объекты (в вашем случае Boiler
, Radiator
и т. Д.) Знают о слое пользовательского интерфейса, который их потребляет.Если вы обнаружите, что вам нужно передать Form
одной из этих моделей домена, вы, вероятно, делаете что-то не так.Если вы покажете нам небольшой пример того, чего вы пытаетесь достичь, мы могли бы помочь вам найти более приемлемое решение.