listview -1

main
syneffort 2 years ago
parent ed06dce489
commit 49fc9d5319
  1. 4
      XamarinStudy/XamarinStudy/XamarinStudy/App.xaml.cs
  2. 13
      XamarinStudy/XamarinStudy/XamarinStudy/Models/Food.cs
  3. 26
      XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml
  4. 46
      XamarinStudy/XamarinStudy/XamarinStudy/Views/SampleListViewPage.xaml.cs
  5. 3
      XamarinStudy/XamarinStudy/XamarinStudy/XamarinStudy.csproj

@ -53,7 +53,9 @@ namespace XamarinStudy
//MainPage = new SampleTableViewPage(); //MainPage = new SampleTableViewPage();
MainPage = new NavigationPage(new SampleTableViewSimpleRegisterPage()); //MainPage = new NavigationPage(new SampleTableViewSimpleRegisterPage());
MainPage = new SampleListViewPage();
} }
protected override void OnStart() protected override void OnStart()

@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace XamarinStudy.Models
{
internal class Food
{
public string Name { get; set; }
public int Price { get; set; }
public string Flavor { get; set; }
}
}

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="XamarinStudy.Views.SampleListViewPage">
<ContentPage.Content>
<StackLayout>
<ListView x:Name="mainListView" ItemSelected="mainListView_ItemSelected">
<ListView.Header>
<ContentView BackgroundColor="Salmon">
<Label Text="Food List" HorizontalTextAlignment="Center" FontSize="Large" TextColor="White"/>
</ContentView>
</ListView.Header>
<ListView.ItemTemplate>
<DataTemplate>
<TextCell Text="{Binding Name}" Detail="{Binding Price}"/>
</DataTemplate>
</ListView.ItemTemplate>
<ListView.FooterTemplate>
<DataTemplate>
<Label Text="{Binding Count, StringFormat='{0}ea'}" HorizontalTextAlignment="Center" FontSize="Medium" TextColor="Navy"/>
</DataTemplate>
</ListView.FooterTemplate>
</ListView>
</StackLayout>
</ContentPage.Content>
</ContentPage>

@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;
using XamarinStudy.Models;
namespace XamarinStudy.Views
{
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class SampleListViewPage : ContentPage
{
private List<Food> foods;
public SampleListViewPage()
{
InitializeComponent();
InitInstance();
}
private void InitInstance()
{
foods = new List<Food>();
foods.Add(new Food() { Name = "냉면", Price = 10000, Flavor = "시원함" });
foods.Add(new Food() { Name = "모밀", Price = 80000, Flavor = "시원함" });
foods.Add(new Food() { Name = "국수", Price = 5000, Flavor = "얼큰함" });
foods.Add(new Food() { Name = "쫄면", Price = 5000, Flavor = "매콤함" });
foods.Add(new Food() { Name = "떡볶이", Price = 3000, Flavor = "매콤함" });
mainListView.ItemsSource = foods;
mainListView.Footer = foods;
}
private void mainListView_ItemSelected(object sender, SelectedItemChangedEventArgs e)
{
if (mainListView.SelectedItem == null)
return;
Food selected = (Food)mainListView.SelectedItem;
DisplayAlert("맛", $"선택한 음식의 맛은 {selected.Flavor} 입니다.", "확인");
mainListView.SelectedItem = null;
}
}
}

@ -50,6 +50,9 @@
<EmbeddedResource Update="Views\SampleGridLayoutPage.xaml"> <EmbeddedResource Update="Views\SampleGridLayoutPage.xaml">
<Generator>MSBuild:UpdateDesignTimeXaml</Generator> <Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Update="Views\SampleListViewPage.xaml">
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>
<EmbeddedResource Update="Views\SampleNavigationPage.xaml"> <EmbeddedResource Update="Views\SampleNavigationPage.xaml">
<Generator>MSBuild:UpdateDesignTimeXaml</Generator> <Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource> </EmbeddedResource>

Loading…
Cancel
Save