#xamarin #xamarin.forms #xamarin.android #xamarin.ios #xamarin-studio
#xamarin #xamarin.forms #xamarin.android #xamarin.ios #xamarin-studio
Вопрос:
Я хочу использовать один и тот же listview на двух разных страницах, как я могу это сделать. Итак, я хочу показать один и тот же listview на двух разных страницах
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:vm="clr-namespace:Tobacco.ViewModels"
x:Class="Tobacco.Views.NewItemPage"
Shell.PresentationMode="ModalAnimated"
Title="New Item">
<ContentPage.BindingContext>
<vm:AboutViewModel />
</ContentPage.BindingContext>
<ContentPage.Resources>
<ResourceDictionary>
<Color x:Key="Accent">#0c7b93</Color>
</ResourceDictionary>
</ContentPage.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<StackLayout BackgroundColor="{StaticResource Accent}" VerticalOptions="FillAndExpand" HorizontalOptions="Fill">
<StackLayout Orientation="Horizontal" HorizontalOptions="Center" VerticalOptions="Center">
<ContentView Padding="0,40,0,40" VerticalOptions="FillAndExpand">
<Image Source="add_product.png" VerticalOptions="Center" HeightRequest="64" />
</ContentView>
</StackLayout>
</StackLayout>
<ScrollView Grid.Row="1">
<StackLayout Orientation="Vertical" Padding="30,90,30,24" Spacing="7">
<Entry Placeholder="Ürün Kodu" FontSize="16" x:Name="txtProductCode" Keyboard="Numeric"/>
<Entry Placeholder="Marka" FontSize="16" x:Name="txtProductBrand"/>
<Entry Placeholder="Ürün" FontSize="16" x:Name="txtProductName"/>
<Entry Placeholder="Fiyat" FontSize="16" x:Name="txtProductPrice"/>
<Button Margin="0,15,0,0" Text="Ürün Ekle"
BackgroundColor="{StaticResource Primary}"
TextColor="White" x:Name="addProduct" Clicked="addProduct_Clicked"/>
<ContentView>
<ListView x:Name="lstProducts">
<ListView.ItemTemplate>
<DataTemplate>
<TextCell Text="{Binding ProductName}" Detail="{Binding ProductPrice}"></TextCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</ContentView>
</StackLayout>
</ScrollView>
</Grid>
</ContentPage>
Комментарии:
1. либо просто скопируйте и вставьте, либо инкапсулируйте свой ListView в contentView и ссылайтесь на него на обеих страницах
2. Я не смог решить это с помощью копирования и вставки. Можете ли вы объяснить проще, я еще новичок.
3. если вам нужна дополнительная помощь, вам нужно опубликовать свой код. Пожалуйста, НЕ публикуйте код или ошибки в виде изображений
4. Что произойдет, если скопировать XAML для ListView в XAML на новой странице? Это буквально самый простой способ совместного использования кода.
5. К сожалению, этого тоже не произошло. Позвольте мне объяснить следующим образом: у меня есть две страницы xaml, на одной будет зарегистрирован продукт, а на другой будут отображаться эти записи в listview. Я надеюсь, что это стало более понятным. Большое вам спасибо за вашу помощь.