Не работает условие visible

Так это события, а не методы.

Сделать-то что надо? Для какой-то инициализации при запуске обычно используют конструктор формы или её события типа Load, Shown.

а что делать если их нету

Где нету? Они у формы, а не у картинки.

а что делать если в следуйщий раз открыть форму с картинкой то она открывается через show то как сделать чтобы проверка чекбокса всеровно работала

:arrow_down:

Надо для начала нормально описать задачу полностью.
Что есть, что при каких условиях должно происходить.

хорошо

есть чек бокс с именем checkBox1 он находится в форме settings1
есть picturebox с именем update_newYear
есть также форма update

задача стоит в том чтобы через чекбокс можно было контролировать значение visible у picturebox
при том что сама форма update загружается 1 раз а остальные просто скрывается и появляется спомощью showe или hide

Так код из первых постов это делает, в чем проблема и как Load её решает?

нет он почемуто не хочет работать. а спомощью load я хотел сделать чтобы при каждом срабатывание формы чтобы этот код званого проверял значение чека и менял себе по его значение себе свойство visible. но этот план испортило вот это условие

Это что?
Для этого наверно тоже есть события.
Form.Shown Event (System.Windows.Forms) | Microsoft Docs

Но лучше для начала понять почему не работает.
Если Visible в данный момент true и всё равно не видно, то может например картинка лежит внутри панели, которая скрыта, или просто не загружена картинка, или вообще это не тот элемент.
Если Visible само становится false, то искать что его меняет.

я имел виду что не меняется значение visible

ну как там с решением проблемы?

Так а что с ним, решили проблему?)

Неработает условие visible - C# .NET 4.x - Киберфорум (cyberforum.ru)
можете от сюда почитать вроде подходим к концу) если появятвся ответы пишите сюда

Судя по этой строчке вы создаете новую форму, которая нигде не отображается, и меняете видимость на ней.

Ну так я ж и говорю

Так что надо понять разницу между классом и объектом/экземпляром класса, и передавать ссылку на один и тот же экземпляр формы везде.

нет она существует! значение visible меняется только 1 раз. а в следуйщих разах при нажатие на чек и проверки картинки значение не меняется

Тут речь о том, что существовать может сколько угодно экземпляров класса, и они как правило независимы друг от друга.

public class MyForm
{
	public bool Visible = false;
}
					
public class Program
{
	public static void Main()
	{
		var form1 = new MyForm();
		
		var anotherForm = new MyForm();
		anotherForm.Visible = true; // на Visible у form1 это не влияет
	}
}

напишите тогда пожалуйста как правильно написать этот скрипт

:arrow_down:

всмысле покажите на примере

public class MyForm
{
	public bool Visible = false;
}
					
public class AnotherForm
{
	private MyForm _myForm;
	
	public AnotherForm(MyForm form)
	{
		_myForm = form;
		_myForm.Visible = true;
	}
	
	public void SomeEventHandler()
	{
		_myForm.Visible = false;
	}
}

public class Program
{
	public static void Main()
	{
		var form1 = new MyForm();
		
		var form2 = new AnotherForm(form1);
	}
}