Tekst konsoli wyswietlany w aplikacji WPF

0

Jak zrobić, żeby w aplikacji w WPF zrobić jakieś okienko które by wyświetlało mi informacje jak w konsoli? Czy da się wysłać jakieś wiadomości do np. TextBox'a w XAMLu by na bieżąco wyświetlało mi nowe informacje które będą się działy? Albo jak się nazywa taki odpowiednik i pod jaka nazwą powinienem szukać?

0
  1. bieżąco
  2. po prostu dodajesz nową linijkę tekstu na końcu textboksa.
0

Jak nową linjkę? Mógłbyś to rozjaśnić? Chcę, żeby się aktualizowało cały czas, bo będzie tam często się zmieniać wiadomość, nie chcę jakiejś konkretnej informacji, tylko powiedzmy jedna się zakończy i dalej coś powinno być wyświetlone, zależnie od tego co zdecyduje użytkownik.

0

Jeżeli zależy ci na logowaniu deweloperskim to możesz w ustawieniach projektu zaznaczyć output type na Console Application, i wyświetlać tekst zwykłem Console.WriteLine("jakaś wiadomość");
A jeżeli na czymś bardziej delikatnym to tak jak @Azarien dajesz zwykłą kontrolkę TextBlock i przypisujesz jej tekst, link do dokumentacji: https://msdn.microsoft.com/pl-pl/library/system.windows.controls.textblock.text(v=vs.110).aspx

0

To może jeszcze inaczej przykładowo mam w XAMLu "Label" teraz jak się w programie do tego odnieść, żeby tam mi ustawiało to co napisze w kodzie?

W XAMLu mam coś takiego

<Label x:Name="myLabel" Content="" HorizontalAlignment="Left" Height="195" Margin="90,34,0,0" VerticalAlignment="Top" Width="612" />

W kodzie:

            Label myLabel = new Label();
            myLabel.Content = "tekst";

Czegoś tutaj brakuje?

1

To zależy czy chcesz korzystać z MVVM czy z Code Behind. Jeżeli MVVM to musisz się zapoznać z czymś takim jak chociażby interfejs INotifyPropertyChanged i binding w xmalu. Jeżeli korzystasz z Code Behind to możesz wykorzystywać wszystkie zmienne które definiujesz w xamlu - tak jak to zrobiłeś wyżej

x:Name="MyLabel"

albo

Name="MyLabel"

Tylko że w kodzie nie tworzysz nowych obiektów. One są tworzone w czasie inicjalizacji okna w metodzie InitializeComponent() <- jak dobrze poszukasz to znajdziesz ją, ale nie jest Ci ta wiedza na razie potrzebna. Żeby ustawić jakiś tekst spróbuj:

myLabel.Contet = "jakiś tekst";

ale bez przypisywania obiektu do myLabel.

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