WPF, przypisanie pewnej wartości do jednego okienka.

0

Mam ja sobie takie cuś z toolboxa.

<TextBlock Name="TxtBlock_sciezkaWejscia" IsEnabled="False" VerticalAlignment="Center" HorizontalAlignment="Stretch" Margin="5, 0, 5, 0" />

Mam też zmienną

sciezkaPliku

w której przechowywana jest ścieżka jak nazwa wskazuje. Chce żeby w tym tekst blocku wyświetlała mi się ta ścieżka, jak to przypisać?
Chciałem w MainWindow dać coś takiego:

TxtBlock_sciezkaWejscia.DataContext = sciezkaPliku;

ale coś nie bangla.

1

DataContext ustawiasz na klase - to jest kontrakt danych. Polecam też zaimplementować w klasie INotifyPropertyChanged. Wówczaas w xaml po prostu bindujesz text do odpowiedniego odpowiedniej nazwy zmiennej

0

<TextBlock Name="TxtBlock_sciezkaWejscia" IsEnabled="False" VerticalAlignment="Center" HorizontalAlignment="Stretch" Margin="5, 0, 5, 0" Text="{Binding sciezkaPliku}"/> ??

1

Użyj właściwości Text zamiast DataContext. Do tego ew. poczytaj chwilę o binding, co pozwoli Ci podpiąć zmienną z tekstem zamiast w codebehind, to w pliku XAML.

Edit: Wygląda na to, że sporo się spóźniłem. Tak, jeśli Ci nie działa, spróbuj dodać DataContext albo dla całego pliku XAML albo tylko dla TextBlocka.

<TextBlock.DataContext>
                <namespace:nazwaKlasyZKtórejPobieraszWłaściwość/>
</TextBlock.DataContext>

I wtedy odwołujesz się do property z tej klasy.

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