C# 코드로 TextBlock을 만들고 JSON 데이터를 바인딩하려고합니다. 지금이 순간 내가 이런 식으로하고 싶지 :C# 코드를 통해 TextBlock에 Json 데이터 바인딩
DataContext="{Binding Item}"
d:DataContext="{Binding Groups[0].Items[0]}">
<Grid.ChildrenTransitions>
<TransitionCollection>
<EntranceThemeTransition/>
</TransitionCollection>
</Grid.ChildrenTransitions>
<Grid.RowDefinitions>
<RowDefinition Height="140"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.Background>
<ImageBrush ImageSource="/Assets/BackGroundGAC.jpg" Stretch="UniformToFill"/>
</Grid.Background>
<Grid Grid.Row="1" x:Name="contentRegion">
<StackPanel Orientation="Horizontal">
<StackPanel Orientation="Horizontal">
<StackPanel x:Name="STACKActualStockDeliverTime">
<TextBlock x:Name="HEADERActualStockDeliverTime" FontSize="24" Text="Voorraad en levertijd"></TextBlock>
</StackPanel>
<StackPanel x:Name="STACKActualStockDeliverTime2">
<TextBlock x:Name="Headert" FontSize="24" Text=""></TextBlock>
</StackPanel>
</StackPanel>
지금 내가 C# 코드에서 만들어 된 본체에 JSON 데이터를 추가합니다 : 이것은 내 XAML 코드는
if (actualStock == true)
{
TextBlock TBActualStock = new TextBlock();
TBActualStock.Text = "Actuele voorraad: ";
TBActualStock.FontSize = 18;
STACKActualStockDeliverTime.Children.Insert(1, TBActualStock);
TextBlock TBBindActualStock = new TextBlock();
TBBindActualStock.Text = "{Binding ActualStock}"; //this is where it should bind
TBBindActualStock.FontSize = 18;
STACKActualStockDeliverTime2.Children.Insert(1, TBBindActualStock);
}
입니다. XAML에서 {바인딩 설명}을 사용해야합니다. //description is a part of my json object so that works
하지만 C# 코드에서이 작업을 수행하면 텍스트가 {바인딩 설명}으로 설정됩니다.
이 문제를 어떻게 해결할 수 있습니까?
ps : XAML이 아닌 C# 코드로 수행해야합니다.
처럼 바인딩 클래스를 사용하고 XAML 코드를 통해 바인딩 {ActualStock 바인딩}라고하고, 내가하지 않습니다 그걸 원해. ActualStock을 얻기 위해 내 물건의 새 인스턴스를 만들어야합니까? 업로드 한 XAML 파일에서 볼 수 있듯이 Items를 datacontext에 바인딩합니다. C#에서 비슷한 작업을해야합니까? – Proliges
속성 – Sajeetharan
에 대해 INotifyPropertyChanged를 사용해야합니다. 감사합니다. 이것은 정답입니다. – Proliges