Witam,
chciałbym zmieniać wygląd okna podczas jego działania. Chodzi o to, że jeśli kliknę jakiś button pojawi mi się dodatkowy button w innym miejscu. Czy jest do tego jakaś specjalna logika? Czy trzeba tworzyć nowe okno, dziedziczyć po wcześniejszym i tak w kółko? Proszę o pomoc.
Pojawi sie w innym miejscu tzn. w tym samym oknie ale w innym polozeniu? Wtedy nie trzeba przeciez tworzyc zadnego nowego okna.
WinForms, WPF?
W handlerze pierwszego buttona tworzysz nowy button w innym miejscu lub tworzysz ten button wcześniej z Visible=false
a w handlerze tylko zmieniasz na true. Nie rozumiem co tu ma dziedziczenie okien do tego.
WPF.
Nie odzywałem się bo zrobiłem sobie mały odpoczynek od programowania.
Mam następujący problem, że w oknie głównym po kliknięciu buttona otwiera mi się nowe okno, w którym po naciśnięciu pewnego buttona, w oknie głównym pewien wrap panel zmieni isenabled z false na true oraz do listboxa doda nową pozycję z danymi wypełnionymi w nowo otwartym oknie. Metoda przycisku z "małego" okienka:
private void btnazwaok_Click(object sender, RoutedEventArgs e)
{
OknoGlowne.NazwaNowej = tbnazwa.Text;
this.Close();
}
Próbowałem: OknoGlowne. i tutaj szukać nazwy mojego wrap panelu żeby można było zmienić isenabled, ale nie znajduje go tam. Bardzo proszę o podpowiedź.
Ok, w OknieGlownym stworzylem metode zmien, w oknie "pobocznym" tworze nowy obiekt klasy OknoGlowne i wywoluje metode zmien, jednak bez efektu.
Metodazmien:
public void zmien()
{
cbtablica.IsEnabled = true;
}
tworze nowy obiekt klasy OknoGlowne
Właśnie dlatego że tworzysz nowy obiekt.
Główne okno:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Window1 w1 = new Window1(this);
w1.Show();
}
public void MyMethod()
{
this.Width += 10;
}
}
Drugie okno:
public partial class Window1 : Window
{
private MainWindow mainWindow;
public Window1(MainWindow mainWindow )
{
InitializeComponent();
this.mainWindow = mainWindow;
}
private void button1_Click(object sender, RoutedEventArgs e)
{
mainWindow.MyMethod();
}
}