List EDocuments имеет модель EDocument. List EDocuments часть основной ViewModel. Когда я вычитываю лист, мне надо скрыть некоторые данные согласно бизнес логике, для примера, вот часть которую мне надо скрыть:
StackLayout Orientation="Horizontal" Padding="15, 15, 0, 0" IsVisible="{Binding MainViewModel.NewDocumentsExists}"
Поле NewDocumentsExists часть основной ViewModel, не EDocument. Как мне обратится к основной моделе? Я себе представлял это так MainViewModel.NewDocumentsExists
Main:
<StackLayout BindableLayout.ItemsSource="{Binding EDocuments}">
<BindableLayout.ItemTemplate>
<DataTemplate>
<Frame CornerRadius="5" OutlineColor="#c3c3c3" BackgroundColor="#F2FFFFE0">
<StackLayout Orientation="Vertical" HorizontalOptions="FillAndExpand">
<StackLayout Orientation="Horizontal">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Номер документа:" ></Label>
<Label Style="{StaticResource LabelFontSize}" Text="{Binding DocumentNum}"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Точка вивантаження:" ></Label>
<Label Style="{StaticResource LabelFontSize}" Text="{Binding UnloadPoint}"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Кількість місць:" ></Label>
<Label Style="{StaticResource LabelFontSize}" Text="{Binding PlacesTotal}"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Загальна вага:" ></Label>
<Label Style="{StaticResource LabelFontSize}" Text="{Binding WeightTotal}"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Статус:" ></Label>
<Label Style="{StaticResource LabelTitleFontSize}" TextColor="Red" Text="{Binding EDocState.StateName}"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal">
<Line BackgroundColor="Black" HeightRequest="1" />
<Label Text="Перелік товару:" TextColor="Black" FontSize="22"/>
</StackLayout>
<StackLayout BindableLayout.ItemsSource="{Binding Specifications}">
<BindableLayout.ItemTemplate>
<DataTemplate>
<Frame CornerRadius="5" OutlineColor="#c3c3c3" BackgroundColor="White">
<StackLayout>
<StackLayout Orientation="Horizontal" HorizontalOptions="FillAndExpand">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Найменування:"/>
<Label Style="{StaticResource LabelFontSize}" Text="{Binding Name}"/>
</StackLayout>
<StackLayout Orientation="Horizontal" HorizontalOptions="FillAndExpand">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Тип:"/>
<Label Style="{StaticResource LabelFontSize}" Text="{Binding TypeOfPackaging}"/>
</StackLayout>
<StackLayout Orientation="Horizontal" HorizontalOptions="FillAndExpand">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Вага:"/>
<Label Style="{StaticResource LabelFontSize}" Text="{Binding GrossWeight}"/>
</StackLayout>
<StackLayout Orientation="Horizontal" HorizontalOptions="FillAndExpand">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Кількість місць:"/>
<Label Style="{StaticResource LabelFontSize}" Text="{Binding NumberOfSeats}"/>
</StackLayout>
</StackLayout>
</Frame>
</DataTemplate>
</BindableLayout.ItemTemplate>
</StackLayout>
<StackLayout Orientation="Horizontal" Padding="15, 15, 0, 0" IsVisible="{Binding **NewDocumentsExists**}" IsEnabled="{Binding NewDocumentsExists}">
<Label Style="{StaticResource LabelTitleFontSize}" Text="Вибрати:" Margin="0, 0, 20, 0" />
<Switch Scale="1.5" IsToggled="{Binding NewDocumentsExists}" OnColor="LightGray" ThumbColor="{Binding SwitchColor}" />
</StackLayout>
</StackLayout>
</Frame>
</DataTemplate>
</BindableLayout.ItemTemplate>
</StackLayout>
public ... SomeProperty {get;set;}- это свойство). А так, https://ru.stackoverflow.com/a/724594/220553 – EvgeniyZ Jun 24 '22 at 12:02