<StackLayout x:Name="stck" BindableLayout.ItemsSource="{Binding Path=StreamIdCollection, Source={x:Static tokService:CrossOpenTok.Current}}">
<BindableLayout.ItemTemplate>
<DataTemplate>
<tok:OpenTokSubscriberView HeightRequest="200" StreamId="{Binding .}"/>
</DataTemplate>
</BindableLayout.ItemTemplate>
</StackLayout>
Это то, что я до сих пор пробовал в C#:
dataTemplate = new DataTemplate(() =>
{
OpenTokSubscriberView subscriberView = new OpenTokSubscriberView
{
HeightRequest = 200,
WidthRequest = w,
};
subscriberView.SetBinding(OpenTokSubscriberView.StreamIdProperty, new Binding() {Source = this });
return subscriberView;
});
publisherView = new OpenTokPublisherView
{
WidthRequest = w,
HeightRequest = 200
};
stackSubcriber = new StackLayout
{
Orientation = StackOrientation.Vertical,
WidthRequest = w,
HeightRequest = 400,
BackgroundColor = Color.LightGray
};
stackSubcriber.SetBinding(BindableLayout.ItemsSourceProperty, new Binding() { Path = "StreamIdCollection",Source = CrossOpenTok.Current });
BindableLayout.SetItemTemplate(stackSubcriber, dataTemplate);
Мне нужно понять, как писать выше XAML в C#? Мое полное приложение построено с C#, и поэтому я не хочу писать его на XAML.