Zmiana parametrów w każdej klasie

0

Witam. Mam kontrolkę TextBox o nazwie txtWynik. Co zrobić abym mógł zmieniać jej parametr Text za pomocą :

txtWynik.Text = "jakas tres";

ale w całym kodzie. Dotychczas mogę zmieniać tę wartość jedynie w klasie głównej, czyli tej, w której znajduje się (o ile to ma coś do rzeczy):

public Form1()
        {
            InitializeComponent();
        }

Czyli ogólnie rzecz biorąc robię sobie nową klasę:

class nowaKlasa
{
txtWynik.Text = "Nowa klasa";  // i tu chodzi mi o to, aby takie coś działało mimo innej klasy
}

Wiem, że zapewne nie rozumiem o co tu właściwie chodzi, ale podejrzewam, że pewnie o InitializeComponent i wartość private zamiast public w jakimś miejscu, ale nie wiem, to mój pierwszy dzień z Windows Forms.

Proszę o pomoc. Pozdrawiam.

0

Komponenty na formie są private, nie public .. - i chyba niewiele w tej materii możesz zrobić (tylko nie zmieniaj ręcznie pliku Designera).

Co do "klasy głównej" to jest nią klasa Main w pliku Program.cs, a nie twoja formatka.

Odnośnie pytania - zalecałbym przeprojektowanie trochę tej aplikacji ... bo fakt, że potrzebujesz się odwołać do tego TextBoxa z innej klasy świadczy o niedoskonałości tego programu..

0

klikasz na txtWynik i w OI zmieniasz Modifiers na Public a potem piszesz Form11.txtWynik.Text

1

klikasz na txtWynik i w OI zmieniasz Modifiers na Public a potem piszesz Form11.txtWynik.Text

Zmartwie cię, żeby tak można było zrobić to jeszcze oprócz public przydałoby się static :)

Zygmunt - Raczej wątpie żebyś rzeczywiście potrzebował dostępu do labela z każdej klasy w kodzie. Dodaj sobie do klasy w której zmieniasz tekst referencję do labela i z jej pomocą zmieniaj wartość.

PS. Niezbyt potrafię sobie wyobrazić sytuację gdy nie ma innej możliwości niż bezpośrednie zmienianie komponentu z innej klasy... Jeśli się jakoś da to spróbuj to zrobić zwracaną wartością (jeśli zmienia się w wyniku wywołania metody), albo (można i tak...) eventem.

0

ty mnie nie martw ty zacznij czytać ze zrozumieniem

1 użytkowników online, w tym zalogowanych: 0, gości: 1