• Anasayfa
  • Hakkımızda
  • Etkinlikler
  • Destek Verin
  • Site Haritası
  • Giriş Yap
  • Üye Ol
  • Facebook
  • Twitter
  • RSS
Yazılım Dilleri
  • Soru - Cevap
  • EĞİTİM SETİ
  • KATEGORİ
  • DUYURU
  • TEKNOLOJİ HABERLERİ

Son Sorular

  • 8/2/2020 11:38:31 PM'Basit' Yazılım Dili
  • 6/25/2020 3:18:13 PMderleme hatası
  • 12/11/2017 4:49:15 PMWindows Hizmeti Hk.
  • 4/23/2016 12:55:33 AMC programlama 2 oyun

Popüler Sorular

  • 5/27/2012 5:49:50 AMAsp.Net ile Date time alana veri ekleyemiiyorum ?
  • 4/2/2012 12:45:18 AM.exe uzantılı dosya için dijital imza nerde nasıl alınır.
  • 5/12/2012 8:44:49 AMAcil Yardım
  • 5/27/2012 1:46:51 PMveri tabanı bağlantısı
  • .Net Framework
  • 8085 Assembly
  • Active Directory
  • ADO.NET
  • Android
  • Apple IOS
  • Arduino
  • ASP.NET
  • ASP.NET MVC
  • Blackberry
  • C#.Net
  • C++
  • CCG Framework
  • CISCO
  • CSS
  • Diğer
  • Dreamweaver
  • Entity Framework
  • Exchange Server
  • Gömülü Sistemler
  • GSM Programlama
  • Güncel
  • Güvenlik
  • HTML5
  • Java
  • Javascript / JQuery
  • Jira
  • Kariyer ve İş Yaşamı
  • LibreOffice
  • LINQ
  • Linux
  • Matlab
  • Microsoft Dynamics CRM
  • Mobil Uygulama Geliştirme
  • MySQL
  • NoSQL
  • Oracle
  • OWIN
  • PFSense
  • PHP
  • Powershell
  • Python
  • Sanallastirma
  • SAP-ABAP
  • SCOM 2012
  • SEO
  • Sharepoint 2010
  • Sharepoint 2013
  • Silverlight
  • Sistem Analiz ve Tasarımı
  • SQL Server
  • Symantec
  • TFS
  • T-SQL
  • Ubuntu
  • VB.NET
  • Veritabanı Yönetim Sistemleri
  • Visual Studio
  • VMware
  • WCF
  • Web Hosting
  • Windows 8
  • Windows Azure
  • Windows Phone 7.1
  • Windows Phone 8
  • Windows Server
  • Wordpress
  • WPF
  • Xamarin
  • XNA
  • Yazılım Mühendisliği
  • Yöneylem Araştırması
  • ASP.NET MVC
  • Entity Framework
  • Javascript / JQuery
  • LINQ
  • PHP

Son Duyurular

IPhone 6 ve IPhone 6 Plus Teknik Özellikleri ve Fiyatı

IPhone 6 ve IPhone 6 Plus Teknik Özellikleri ve Fiyatı

DELL'in Yeni Projesi: USB Bilgisayar (Project Ophelia)

DELL'in Yeni Projesi: USB Bilgisayar (Project Ophelia)

Windows Phone Youtube Uygulaması Google ve Microsoft ile Yeniden Yapılıyor

Windows Phone Youtube Uygulaması Google ve Microsoft ile Yeniden Yapılıyor

Android ve Apple IOS Telefonlar için Blackberry Messenger (BBM)

Android ve Apple IOS Telefonlar için Blackberry Messenger (BBM)

Nokia Lumia 925 Teknik Özellikleri, Lumia 928 ve 920 ile Karşılaştırması

Nokia Lumia 925 Teknik Özellikleri, Lumia 928 ve 920 ile Karşılaştırması

LG Optimus G Pro Özellikleri ve Gözle Video Oynatma Teknolojisi

LG Optimus G Pro Özellikleri ve Gözle Video Oynatma Teknolojisi

WP'da Veritabanı-4(Anasayfanın Oluşturulması)

MainPage.xaml sayfası bizim kullanıcıya alışveriş listesi ekleme,silme ve eklenen alışveriş listeleri listeleme imkanı sunabildiğimiz bir sayfadır.

26.09.2012

Yazar: Nagihan Sema KUDU (Google+)

Kategori: Windows Phone 7.1

3802

 

 

    MainPage.xaml sayfası bizim kullanıcıya alışveriş listesi ekleme,silme ve eklenen alışveriş listeleri listeleme imkanı sunabildiğimiz bir sayfadır.

 

 

     Bu sayfayı oluşturmak için ApplicationBarIcon butonlarından da faydalanacağız bu butonları kullanarak yeni sayfa oluşturduğumuzda default olarak yorum halinde olan ve aşağıda gösterilen alanı, yorum olmaktan çıkararak erişebiliriz.

 

 

 

 

Öncelikle yukarıda belirtilen kodları seçip kırmızı kutu içine alınan kısmı

“Uncomment the selected lines” butonuna tıklayarak bu alanı kullanabilir hale geliriz. Bu

işlemi tamamladıktan sonra aşağıdaki şekilde kodlamamızı yaparak Add new list ve Showlists

uygulama butonlarını oluşturalım yine bu buton resimlerini yolunu vererek kendi seçtiğimiz

resimlerden oluşturabileceğimiz gibi

 

 

C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Icons\dark ya da

C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Icons\light yolu altında 

 

bulunan varolan ikon resimlerini kullanabiliriz.

 

 

 

 

<phone:PhoneApplicationPage.ApplicationBar>

        <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">

            <shell:ApplicationBarIconButton

                IconUri="Icons/add2.png"

                Text="add"

                x:Name="newListAddBarButton"

               Click="newListAddBarButton_Click"/>

            <shell:ApplicationBarIconButton

                IconUri="Icons/show2.png"

                Text="show"

                x:Name="ShowMyListBarButton"

              Click="ShowMyListBarButton_Click"/>

           

         

 

        </shell:ApplicationBar>

    </phone:PhoneApplicationPage.ApplicationBar>

 

 

 

 

 

 

ApplicationBarIcon butonlarımızı oluşturduğumuza göre veri tabanı ile ilişkilendirip veri

tabanında yer alan bilgileri listeleyebilmemiz için bir ListBox oluşturalım ve Itemsource’ ini

ProductLists ile ilişkilendirelim.

 

 

ItemsSource="{Binding ProductLists}"

 

ListBox’ ı oluşturmadan önce veri tabanından gelecek verilerin hangi şablonda olacağını

belirleyelim. Bunun için aşağıdaki şekilde bir DataTemplate oluşturalım:

 

 

<phone:PhoneApplicationPage.Resources>

        <DataTemplate x:Key="ListItemTemplate">

 

            <Grid HorizontalAlignment="Stretch" Width="420">

                <Grid.ColumnDefinitions>

                    <ColumnDefinition Width="100" />

                    <ColumnDefinition Width="*" />

                    <ColumnDefinition Width="Auto" />

                    <ColumnDefinition Width="100" />

                </Grid.ColumnDefinitions>

 

                <CheckBox

                    IsChecked="{Binding Checked, Mode=TwoWay}"

                    Grid.Column="0" VerticalAlignment="Top"/>

 

 

                <TextBlock

                    Text="{Binding Name}"

                    FontSize="{StaticResource PhoneFontSizeLarge}"

                    Grid.Column="1" Grid.ColumnSpan="2"

                    VerticalAlignment="Top" Margin="-36, 12, 0, 0"/>

 

                <Button                               

                    Grid.Column="3"

                    x:Name="BtnDeleteList"

                    BorderThickness="0"                                                                  

                    Margin="0, -18, 0, 0"

                    Click="BtnDeleteList_Click">

 

                    <Image

                    Source="Icons/appbar.delete.rest1.png"

                    Height="75"

                    Width="75"/>

 

                </Button>

            </Grid>

        </DataTemplate>

    </phone:PhoneApplicationPage.Resources>

 

Bundan sonraki sayfalarda yapacağımız Binding işlemleri de benzer şekilde olacaktır

,görüldüğü gibi verilerimizin önce bir checkbox , daha sonra listenin ismini gösteren

(<TextBlock   Text="{Binding Name}"  ile gösterebilen ) bir textblock, bir delete butonu ile

devam etmesini sağladık.

 

 

Data templateyi oluşturduktan sonra  ListBox kodlaması yapalım:

 

<ListBox

                        x:Name="allListItemsListBox"

                        ItemsSource="{Binding ProductLists}"

                        Margin="12,0,4,0" Width="440"

                        ItemTemplate="{StaticResource ListItemTemplate}" Grid.ColumnSpan="2" />

 

 

Böylelikle veri tabanımız ile Kontrol elemanları ListBox vb.’ ini ilişkilendirerek(Binding

işlemi ile) verilerimizi sunabiliriz. Bu işlemi çoğu sayfada kullanacağız ve hepsinde de

ListBox kontrolünü tercih edeceğiz çünkü alışveriş listesi bir listelendirme gerektirmekte,

ürünler olsun alış-veriş listesi olsun hepsi liste halinde kullanıcıya sunulmaktadır.

MainPage.xaml.cs kısmında ise aşağıdaki işlemleri yapmalıyız:

İlk olarak kullanıcının yeni liste ekle ApplicationBar butonuna tıkladığında NewListPage ye

gitmesi için aşağıdaki kodlamayı yapalım. Bu arada ApplicationBarIcon butonların Click

eventine ulaşmak için şunları yaparız:

Xaml tarafında butonla ilgili kısma Click yazdığımızda otomatik olarak bize New Event

Handler oluşturacaktır.

 

 

Click alanına gelip enter tuşuna bastığımızda aşağıdaki görünüm karşımıza çıkacaktır.

 

Bu aşamadayken tab tuşuna bastığımızda .xaml.cs taraında click event metodu bizim için

oluşturulmuş olacaktır. XAML tarafında butonların click event’ ine ulaşmak genel olarak bu

şekildedir. Click event’ e ulaştıktan sonra NewList butonumuz için aşağıdaki yönlendirmeyi

yapalım:

 

 

 

private void newListAddBarButton_Click(object sender, EventArgs e)

        {

            NavigationService.Navigate(new Uri("/NewListPage.xaml", UriKind.Relative));

        }


 

Var olan listelerin gösterilmesi için oluşturduğumuz AppBarIcon butonu ShowList için ise:

 

 

  public void ShowMyListBarButton_Click(object sender, EventArgs e)

        {

           NavigationService.Navigate(new Uri("/PanoramaLists.xaml", UriKind.Relative));

        }

 

 

 

 

Var olan listelerin gösterilmesi için oluşturduğumuz AppBarIcon butonu ShowList için ise:

Böylece kullanıcı hangi listeleri görmek istediğini seçmek için seçim yapabileceği (checkbox

işaretli ise liste gösterilir.) sayfaya yani PanoramaLists sayfasına götürülür.

 

Alışveriş listelerini silmek için kullanacağımız DeleteList butonu veri tabanında yarattığımız

DeleteList metodunu kullanarak seçilen listeyi siler bu listeyi silerken liste içinde bulunan

ürünlerde silineceğinden silmeden önce kullanıcıya bir uyarı sunulur.

 

 

private void BtnDeleteList_Click(object sender, RoutedEventArgs e)

        {

            var button = sender as Button;

            if (MessageBox.Show(string.Format("All products of this shop list will delete.Are you sure ?"), "Confirm Delete", MessageBoxButton.OKCancel) == MessageBoxResult.OK)

            {

                if (button != null)

                {

                    TList ListForDelete = button.DataContext as TList;

 

                    //Eğer liste silinirse listeye ait tüm ürünleri de sil.

                    foreach (TProduct deleteProduct in App.View.DBShop.Products)

                    {

                        if (ListForDelete.Id == deleteProduct._PListId)

                            App.View.DeleteProduct(deleteProduct);

                    }

 

                    App.View.DeleteList(ListForDelete);

                }

            }

            this.Focus();

        }

 

Sender parametresi ile alışveriş listelerinin bulunduğu listede hangi listenin delete butonuna

tıklanmış ise o liste seçilip silinebilir.

 

 

protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)

        {

            // Save changes to the database.

            App.View.SaveChangesToDB();

        }

 

Son olarark On NavigatedFrom() metodu ile yaptığımız değişiklikleri (veri ekleme, silme)

veri tabanına yansıtmış oluruz.

 

Uzun bir makale olduğunun farkındayım,son olarak uygulama koduna burdan erişebilirsiniz,iyi çalışmalar.

Yazar Hakkında

Nagihan Sema KUDU

Nagihan Sema KUDU

www.semakudu.com

Karadeniz Teknik Üniversitesi Bilgisayar Mühendisiliği bölümü mezunuyum,çok küçük yaşlardan beri müzik ve resimle uğraşıyorum,2011 Microsoft yaz okulu ile başlayan serüvenim,Microsoft Student Partner olarak devam etti.2013 yılında Nokia Developer Champion oldum.Windows Phone ile ilgili verdiğim bir çok eğitim var.Silverlight,.NET,Görüntü ve Ses İşleme,Windows Phone,Oyun Programlama,Windows8,Java,Android,UI,UX ile ilgilenmekteyim.

Sosyal Medya

ORANLAR

  • 3802izleme

Arkadaşlarınla Paylaş

  • Tweet

0 Yorum

Yorum Yaz / Soru Sor

Lütfen yorum yazmak veya soru sormak için üye girişi yapınız.

Son Yorumlar

  • Böyle bir sayfalama ağ trafiğini hafifleti...
  • Böyle bir sayfalama ağ trafiğini hafifleti...
  • Merhaba, ellerinize sağlık çok yardımcı ol...
  • Merhaba Bu uygulama örneğinden ASP.net ...
  • Hocam Link başka sayfaya yönlendiriyor.

En Güncel Sorular

  • Bilgilendirme maili (C#.Net)
  • Power Pivot (Sharepoint 2010)
  • BigInteger, BigDecimal (Asp.Net ve Asp.Net MVC)
  • visual C# ile asp nette veritabanı islemleri (Asp.Net ve Asp.Net MVC)
  • Share Point ile Dosya Arşiv Yönetim Sistemi yapılabilir mi ? (Sharepoint 2010)

En Son Cevap Verilen Sorular

  • Bilgilendirme maili
  • BigInteger, BigDecimal
  • visual C# ile asp nette veritabanı islemleri
  • Share Point ile Dosya Arşiv Yönetim Sistemi yapılabilir mi ?
  • txt dosyasına veri yazma

Twitter

Takip et: @yazilim_dilleri

En Çok Okunanlar

Elif BAYRAKDAR

C# ile SQL Server Bağlantısı, Insert, Update ve Delete Sorguları

23.05.2013

  • 124032
  • 0
Hakan Keskin

C# ile Windows Service Projesi Oluşturma, Debug Etme ve Setup Hazırlama

17.12.2013

  • 71194
  • 0
batuhan avlayan

Php - Mail Gönderme (İletişim Formu)

02.09.2013

  • 51803
  • 0

Sponsorlar

KODLAB
Pluralsight
Exchange server is
Office 365
YAZILIM DİLLERİ
Yukarı Çık
  • Hakkımızda
  • Facebook
  • Twitter
  • RSS

© Yazılım Dillerinin Buluşma Noktası | Kaynak belirtildiği sürece makaleler kopyalanabilir.
YazilimDilleri.Net sitesinde yer alan kullanıcıların oluşturduğu tüm içeriklerin yayınlanması ile ilgili yasal yükümlülükler içeriği oluşturan kullanıcıya aittir, YazilimDilleri.Net hiçbir şekilde sorumlu değildir.

Kapat

Giriş Yap

Kullanıcı Adı

Şifre

Şifremi Unuttum

KULLANICI GİRİŞİ