12 Haziran 2015 Cuma

Scroll bar özelleştirme

Merhaba arkadaşlar.

Bugün sizlere css yardımı ile scroll bar üzerinden özelleştirmeler için kullandığımız parametreleri ve örnek kullanımını gösterecem.

Hemen parametrelerimizi yazalım



Scrollbar-face-color: Mause ile tuttuğumuz yerin rengini

Scrollbar-shadow-color: Scrollbarın açık renkteki gölgesinin rengini

Scrollbar-highlight-color: Scrollbar gelen ışık yönündeki rengi(sol taraftaki kenar rengi)

Scrollbar-3dlight-color: Mouse ile sürüklediğimiz yerin yanındaki dış kısım

Scrollbar-darkswadow-color: Scrollbarın koyu renkteki gölgesi

Scrollbar-track-color: Mouse ile tuttuğumuz yer ile oklar arasında kalan kısım

Scrollbar-arrow-color: Alt ve üst okların rengini belirtir
Örnek kullanımı
html,body{
Scrollbar-face-color: yellow;
Scrollbar-3dlight-color:red;
}
hepsi bu kadar.:) bir sonra ki yazıda görüşmek üzere

9 Haziran 2015 Salı

C# excel veri aktarma

Merhaba arkadaşlar.

Bu yazımızda c# listview kayıtlarını excel ortamına nasıl aktarabileceğimize bakacağız. Bu işlemleri yaparken de en basit ve en kolay şekilde işlemlerimizi tamamlayacağız.

İlk iş olarak Visual Studio Ide mizde boş bir c# web form projesi oluşturmakla işleme başlıyoruz. Bunun içinde File -> New -> Project Adımlarını iziliyoruz. Sonrasında New Project penceresinin sol panelinde yer alan Visual C# kategorisine tıklıyoruz ve hemen ardından sağ panelden Windows Forms Application Seçeneğine tıklıyoruz.
Yukarıda ki resimde sayıları takip ederseniz projemizi oluşturabilirsiniz. Burada dikkat edeceğimiz nokta 4. Adımda browser seçeneğine tıklayarak projemizin oluşturulacağı dizini belirtmek. Birde pencerenin en üst kısmında yer alan .Net Framework 4.5 seçeneğinin seçili olması. Tabi siz isterseniz 4.0 veya daha farklı bir sürümü seçebilirsiniz. Benim minimum tercihim 4.0 dır. Çünkü güncel sürümleri kullanmanız sizin açınızdan faydalı olacaktır.

Bu arada unutmadan proje isminde karakter kullanılmıyor. Nasıl hata alacağınızı göstermek için tercih ettim :)
C# ı Csharp olarak değiştirip projemi oluşturdum.

Formumuzun örnek görüntüsü aşağıda ki gibi oldu.




Bunun için formumuza bir adet Listview ve bir adet Button sürükleyip bıraktık. Button üzerinde bir defa tıklayıp ardından Name kısmına kolay olsun diye btnAktar adını verdik.
Listview için işe yanda ki görüntüyü elde edebilmek için öncelikle listview seçili halde iken properties penceresinden View özelliğini Detail olarak düzenledik.
Örnek olarak yanda verilen resimde numaralandırılmış alanlardan 1 numaralı alanı Details yaptık.

2. adımda ise başlıklarımızı belirledik.

Örnek başlıklarımız. UrunID, Ürün Adı, Adet


Yukarıda ki adımları tamamladıktan sonra form görüntümüz ilk resimdeki hale gelecektir.

Şimdi öncelikle listview içerisine kayıt çekmemiz gerekiyor. Normal şartlarda database veritabanından kayıt çekiyoruz fakat makalenin çok uzamaması adına ben manuel kayıt ekleyecem. Çünkü bizim için önemli olan excel ortamına en doğru ve düzgün şekilde aktarmak.

Bu nedenle formumuzun boş bir alanına çift tıklayarak code kısmına geçelim hemen ve formLoad fonksiyonunun dışına aşağıdaki formu yazalım.




private void listviewDoldur()
{
   try
   {
     // 20 tane ürünü dinamik olarak eklemsi için kulandık. artırıp azaltabilirsiniz.
       int urunSayisi = 20;

   // For dönüsü ile ürün sayısı kadar ekleme işlemi yapıyoruz
       for (int i = 0; i < urunSayisi; i++)
       {
         // eklenecek ürünler için örnek bir dizi tanımlıyoruz
           string[] urunler = {
                               "UrunID"+i.ToString(),
                               "Urun Adı " + i.ToString(),
                               "Adet :" + i.ToString()
                               };
           ListViewItem urun = new ListViewItem(urunler); // listview için item tipinde nesne oluşturuyoruz
           listView1.Items.Add(urun); // listview1 adında olan listview nesnemize urun itemini yüklüyoruz
         } // for bitis
   }
   catch (Exception ex)
   {
   MessageBox.Show("Ürün ekleme işlemi sırasında bir hata meydana geldi.\n Hata içeriği:"+ex.ToString());
    }           
}

Yukarıda ki kodun hemen ardından form load loayına aşağıdaki kodu ekleyip projemizi bir çalıştıralım. Bakalım verilerimiz doğru bir şekilde gelecek mi?

private void Form1_Load(object sender, EventArgs e)
        {
            listviewDoldur();
        }

Şimdi projemizi derliyoruz.


Kodlarımız doğruymuş :)

Şimdi ise excel'e aktarma işlemine geçelim. Bunun için öncelikle çalıştırdığımız uygulamayı kapatıp visual studio ortamında ki projemizin kod kısmına geçiyoruz tekrardan.

İlk adım olarak projemize sistem dosyasını çağırıyoruz ve projenin en üstünde bulunan alana aşağıdaki kodu ekliyoruz. Böylelikle referans dosyamızı programımıza dahil etmiş oluyoruz.


using Microsoft.Office.Interop.Excel;
şimdi ise aktarma işlemini gerçekleştirecek olan fonksiyonumuzu yazıyoruz.
        /// 
        ///  ListView verilerini dinamik olarak excel dosyasına aktarır
        /// 
        /// Aktarım Yapılacak ListView nesnesinin IDsi
        public void excelAktar(ListView lw, ProgressBar pb = null)
        {
            try
            {
                Microsoft.Office.Interop.Excel.Application xls = new Microsoft.Office.Interop.Excel.Application();
                Workbook wb = xls.Workbooks.Add(XlSheetType.xlWorksheet);
                Worksheet ws = (Worksheet)xls.ActiveSheet; // çalışma alanı aktif çalışma alanı

                xls.Visible = true; // görünürlük aktif
                #region manuelBaslikalani
                // alanları manuel olarak yazıyoruz
                /*ws.Cells[1, 1] = "Stok Kodu";
                ws.Cells[1, 2] = "Barkod";
                ws.Cells[1, 3] = "Stok Adı";
                ws.Cells[1, 4] = "Stok Miktar";
                ws.Cells[1, 4] = "Stok Grubu";
                ws.Cells[1, 5] = "Stok Markası";
                */
                #endregion
                // Eğer Progress bar nesnesi null değil ise sıfırlama ve ayarlama işlemini gerçekleştir
                if (pb != null)
                {
                    pb.Maximum = Convert.ToInt32(lw.Items.Count.ToString());
                    pb.Value = 0;
                }

                // Şimdi ise dinamik olarak colon bilgilerini alıyoruz ekliyoruz
                for (int i = 0; i < lw.Columns.Count; i++)
                {
                    // alanları manuel olarak yazıyoruz
                    ws.Cells[1, i + 1] = lw.Columns[i].Text.ToString();
                }
                // Şimdi de lw içerisindeki verileri dinamik olarak aktarıyoruz
                int _i = 2; // 2. satırdan itibaren içerikleri doldurmaya başla
                int j = 1;
                foreach (ListViewItem item in lw.Items)
                {
                    ws.Cells[_i, j] = item.Text.ToString();
                    foreach (ListViewItem.ListViewSubItem subitem in item.SubItems)
                    {
                        ws.Cells[_i, j] = subitem.Text.ToString();
                        j++;
                    }
                    j = 1;
                    _i++;
                    // Eğer Progress bar nesnesi null değil ise artırma işlemini yap
                    if (pb != null)
                    {
                        pb.Value = _i - 2;
                    }

                }
                // column sütunları yazı boyutuna göre ayarlıyor
                xls.Columns.AutoFit(); 

               // aktarama işlemi sırasında alabileceğimiz hatalara karşı önlem olarak hata bastırma işlemi yapılıyor
                xls.AlertBeforeOverwriting = false; 
            }
            catch (Exception)
            {
             // hata fırlatıyoruz :)
                throw;
            }
        }

Bir sonraki adıma geçelim. Projemizin grafik arayüzüne geçiyoruz bunun için solution penceresinden Form1 üzerine çift tıklıyoruz. Grafik arabiriminde eklemiş olduğumuz Excel'e Aktar butonuna çift tıklayarak tekrardan kod kısmına geçiyor ve button click olayına aşağıdaki kodu yazıyoruz.

 private void btnAktar_Click(object sender, EventArgs e)
        {
            excelAktar(listView1);
        }

Şimdi ise projemizi derliyoruz. Eğer bir sorun çıkmaz ise işlem tamamdır. Evet her zamanki gibi bir hatamız varmış.

Bu hatada bize referans olarak bir dll dosyasının eksik olarak çağrılması gerektiğini belirtiyor. Peki bu işlemi nasıl yapacağız.

Bunun için hemen solution explorer penceresinden projemiz altından Referances alanına gelip sağ tıklıyoruz.

Resim de numaralandırılmış alana sağ tıklıyoruz.  Add Referance linkine tıklıyoruz. Karşımıza aşağıdaki gibi bir ekran gelecek. Bu ekrandan da Assemblies altında Extensions seçeneğini seçip ilgili dll dosyamızı arıyoruz.



Evet yukarıdaki kütüphanemizi seçip ok tuşuna basıyoruz ve projemizi tekrar derliyoruz.

Evet projemiz çalıştı. Şimdi Excel'e Aktar butonuna tıklayıp programın çalışıp çalışmayacağını kontrol edelim. Hadi Bismillah.



Ve sonuç başarılı :D Hiç hata almadık. Biz bu projemizde excel çıktısına dikkat ederseniz listview başlıklarımızı da dinamik olarak dahil ettik. Siz isterseniz excelAktar fonksiyonu içerisinde bulunan manuelBaslikalani alanı aktif ederek kendi belirlediğiniz başlıkları da ekleyebilirsiniz.


Umarım işinize yarar bir makale olmuştur. Projenin çalıştırılabilir sürümünü de en kısa sürede github üzerinden indirebilirsiniz.

Kaynak için Link1  Link2!

Faydalı olması dileğiyle...

8 Haziran 2015 Pazartesi

Özel Font Yapımı

Merhaba arkadaşlar.

Bugün sizlere kendinize ait özel font oluşturmayı göstereceğim. Bu yazının normal fontlardan farkı font-awesome tarzı icon fontları oluşturabiliyor oluşumuz. Kısacası kendimize ait icon fontlar oluşturup bu fontların sitemizde nasıl kullanılacağını göstereceğim.

Bunun için ilk adım

 http://app.fontastic.me/

adresini ziyaret edip üyelik işlemini gerçekleştiriyoruz. Sonrasında üye bilgilerimiz ile sisteme giriş yapıyoruz. Karşımıza aşağıdaki gibi bir görüntü geliyor.


Görüldüğü gibi karşımıza font oluşturmak için ekranımız geldi. Ben daha önceden örnek font oluşturduğumdan CYFont adında bir alan mevcut bu alan sizde olmayacaktır. Şimdi isterseniz kısa bir bilgi verelim. CYFont alanı dışında Octicon gibi bir çok panel ve bu paneller içinde de özel iconlar var. Siz bu iconlardan kullanmak istediklerinizi üzerine tıklayarak seçebiliyorsunuz ve üst menülerde bulunan Publish butonu ile seçimlerinizin kullanılabilir font halini indirebilirsiniz.

Ama bizim yapacağımız işlem biraz daha farklı. Biz kendi resimlerimizden kendimize özel font yapacağız. Bunun için öncelikle yeni bir font alanı oluşturuyoruz. Bunun için New Font butonuna tıklıyoruz


Hemen sonrasında Untitled font 2 adında bir alan oluşuyor.


Öncelikle isterseniz yukarıda ki resimde işaretli olan Modify Font butonuna tıklayarak alanı yeniden isimlendirelim.











ekranda görüldüğü gibi isimlendirip Save butonuna tıklayıp güncelleme işlemini gerçekleştiriyoruz. Ben buraya örnek olması açısından FontOlusturma2 dedim siz isterseniz kendinize özel isimlerde bırakabilirsiniz.

Şimdi bir sonraki adım olan resimden icon yapma işlemine geçelim. Ama bunun öncesinde resimlerimizi Svg formatına çevirmemiz gerekiyor. Kısa bir aramayla bir çok site bulabilirsiniz.

Örnek olarak google arama motoruna image to svg dediğimiz zaman karşımıza gelen ilk sırada ki

http://image.online-convert.com/convert-to-svg

adresine tıklıyoruz ve karşımıza gelen alanda aşağıda ki gibi işlemlerimizi yapıyoruz. Ben örnek olsun diye 3 adet resim seçtim. Siz kullanmak istediğiniz bir resim seçebilirsiniz.

Yanlız unutmadan 3 resmi aynı anda seçmeyin. aksi halde convert işleminde tek bir dosya olur. Bu nedenle dönüştürmek istediğiniz resimleri teker teker seçip aşağıdaki butona tıklayın. Tabi aşağıdaki resmi incelerseniz bir sürü ayar mevcut siz kendinize göre ayarlayabilirsiniz. Ben örnek olması açısından ayarlara dokunmuyorum.



















Evet yukarıdaki butona tıkladığımızda bize bir adet .svg uzantılı dosya indirecektir. Biz kaç adet dönüşüm yapacaksak o kadar dosyamız elimizde olacaktır.Hemen dönüşümlerimizi yapalım ve ardından asıl işlemi yapacak olan font sitemize tekrar dönelim.

Şimdi font sitemizde öncelikle sayfanın en üstünde bulun Add More Icons linkine tıklıyoruz.

Sonrasında ise Import Icon butonuna tıklıyoruz.



Yukarıda ki adımları uyguladığınızda karşınıza aşağıdaki gibi ekranlar gelecektir.

Ekran bir
 Ekran 2
Gördüğünüz gibi .svg uzantılı dosyalarımız seçip Aç dediğimiz anda yükleme ekranı karşımıza geldi. Burada bize 2 ikonun yüklendiği fakat 1 ikonun ise geçersiz yükleme olduğunu söylemektedir. Neyse bizim için 2 tanede yeter şimdilik :)

Ok butonuna ardından da sayfanın en üstünde bulunan Home linkine tıklayarak ana pencereye dönüyoruz.

Görüldüğü gibi New Set Kategorisi altında 2 Icons bulunduğunu söylüyor.
Biz istersen hemen resmin sağ tarafında görüldüğü gibi Menu ye tıklarsak açılan alandan yeni ikon ekleyebilir, Kategorimizin adını değiştirebilir ve komple kategoriyi silebiliriz. Ben öncelikle Görünen adı değiştiriyorum.

Şimdi ise yukarıda ki resimde ki gibi önce ikonları seçiyorum, sonrada 2 numara ile gösterilen PUBLISH butonuna tıklıyorum. Dikkat ederseniz biz 2 adet ikon seçmiştik ve bu seçim sonunda Publish butonu üzerinde ki sayıda 2 oldu. Buda şu demektir. Biz farklı bir kaç ikon daha seçili hale getirirsek toplam seçili ikon sayısı Publish alanı üzerinde görülecektir. Lafı uzatmadan hemen PUBLISH butonuna tıklayıp son aşamaya geçiyoruz.



Şimdi gelelim numaralandırılan yerlerin açıklamasına.

1-) Publish butonuna tıkladığımda bize bu ikonların kullanımı için gerekli olan css dosyasını internet üzerinden çekebileceğimiz ve diğer insanlarla paylaşabileceğimiz bir adres veriyor.

Örnek: <link href="https://fontastic.s3.amazonaws.com/fnCfw7Nf8M7oUKguMXdyMd/icons.css" rel="stylesheet">

2-)Download ise adından da anlaşılacağı üzere css ve font halini indirebilecek şekilde bir hazırlık yapıyor

3-) Numaralı alan ise örneğin i tagı içerisine nasıl dahil edebileceğimizi gösteriyor

// örnek bir 
<i class="icon-bar-code"></i>

// veya 
<i class="icon-calculator"></i>


Şeklinde kullanabiliyoruz.
Son olarak 4 numaralı alan ise css tarafında data-icon="a" tarzı çağırımlar için kullanılıyor.

Lafı daha fazla uzatmadan download butonuna tıklıyoruz.


Görüldüğü gibi bize .zip uzantılı bir dosya verdi. Bu dosya içeriği de resimde görüldüğü gibidir.
Ayrıca .html uzantılı sayfada ise kullanımla alakalı bir örnek mevcuttur. Zaten daha önceden font-awemesome tarzı bir kullanım yaptıysanız, nasıl kullanacağınızı bilirsiniz. Bilmeyenler içinde mevcut sitenizin klasörününe fonts ve sytles.css dosylarını yükleyip, web sayfanızda css dosyanızı çağırıyorsunuz. Sonrasında ise 3 nolu adımda ki işlemi uygularsanız tamamdır. Son olarak unutmadan styles.css ile fonts klasörü aynı yerde olmalı. Aksi halde çalışmayacaktır. Tabi bunun içinde çözüm çok basit css dosyası içerinden fonts klasörünün yeni yerini gösterir iseniz bu sorunda ortadan kalkacaktır.

Makalemiz biraz uzun oldu ama umarım işinize yarar bir makale olmuştur.

Ayrıca makale ile ilgili video aşağıdadır.




Kaynak Kodlar için Tıklayınız.

Faydalı olması dileğiyle.


7 Haziran 2015 Pazar

Android Sanal Tuş (Navigation Bar) Etkinleştirme



Bu işlem için ROOT gereklidir.


Gerekli Uygulama : Root Explorer


Adımlar :


1: İlk olarak cihazımıza Root Explorer'ı yüklüyoruz. Yükledikten sonra Root Explorer'ı açıp Mount R/W yazan yere tıklayıp supersu dan root erişimini sağlıyoruz.Erişim verdikten sonra mount r/o olacak.


2: Uygulamayı açtıktan sonra system klasörüne giriyoruz














3: Burda bulunan build.prop dosyasına uzun basarak Open In Text Editör ile açıyoruz
4: En aşağıya gelip qemu.hw.mainkeys=0 yazıp save changes e  tıklayıp kayıt edip çıkıyoruz ve cihazı yeniden başlatıyoruz

Php mobil yönlendirme & Php ile browser bilgisi öğrenme

Merhaba arkadaşlar bu yazımızda php ile mobil cihaz algılama ve browser bilgisi almayı öğreneceğiz.

Lafı fazla uzatmadan kodları yazalım. bunun için wampserver da www klasörümüz içerisinde phpdersleri klasörü altında browserbilgileri.php adında bir dosya oluşturdum.

browserbilgileri.php 

<?php
$browser_type = $_SERVER["HTTP_USER_AGENT"]; 

 if( strpos($browser_type,'Chrome')){
  echo 'Chrome Kullanıyorsunuz..';
 }
 else if(strpos($browser_type, 'Firefox')){
  echo 'Firefox Kullanıyorsunuz..';
 }
 else if(strpos($browser_type, 'Android')){
  echo 'Android Kullanıyorsunuz..';
 }
 else if(strpos($browser_type, 'iPhone')){
  echo 'iPhone Kullanıyorsunuz..';
 }
 else if(strpos($browser_type, 'Windows Phone')){
  echo 'Windows Phone Kullanıyorsunuz..';
 }
 else if(strpos($browser_type, 'rv:11.0')){ //İnternet explorer 11 için
  echo "Explorer 11 Kullanıyorsunuz..";
 }
 else if(strpos($browser_type, 'Safari')){
  echo "Safari Kullanıyorsunuz..";
 }
 else if(strpos($browser_type, 'MSIE')){
  echo "internet explorer Kullanıyorsunuz..";
 }
?>

kodlarını yazıyoruz. Bu kodlar ile hangi browserı kullanıyor isek onun adını yazdırıyoruz. Siz isterseniz header(Location)  ile m.siteadiniz.com subdomaine de yönledirebilirsiniz. Tabi browserlar bunlarla kısıtlı değil daha derin bir araştırma ile browser kodlarını bulabilir ve daha farklı browserlarıda algılayabilirsiniz.


Faydalı olması dileğiyle.

Php ile ziyaretçinin ip adresi ve işletim sistemini öğrenme

Merhaba arkadaşlar.

Bildiğiniz gibi php server side yani sunucu taraflı çalıştığından ötürü php ile kullanıcılarınızın bilgisayarı hakkında bilgi elde edemezsiniz. Fakat elde edebileceğimiz bir takım bilgiler tabiki de var. Ama bu bilgiler dışında daha derinlemesine bilgi için 3 parti bir yazılım geliştirmeniz veya kullanmanız gerekmektedir. Peki biz hangi bilgileri alabilir. Alabileceğimiz bilgilerin başında kullanıcılarımızın ip adresi gelmektedir. Bu adres yardımı ile loglarda güvenlik için kullanabilirsiniz.
Bunun yanı sıra browser bilgisi elde edilebilir. Sadece browser dediğime bakmayın neredeyse işletim sistemi ne varıncaya kadar bilgi içerir. Bunun yanında tabi ki belli başlı özellikler yine vardır fakat biz şu an için ip adresi ve işletim sistemi gibi bilgileri alacağız. Php ile ilgili daha detaylı bilgi için mutlata Php.net adresini ziyaret etmelisiniz.

Şimdi örnek kodumuza geçelim

<?php
/*
* Geçerli sayfayı görüntüleyen kullanıcının IP adresidir.
*/
$ip_adresi=$_SERVER['REMOTE_ADDR'];
echo $ip_adresi."<br/>";
/*
* Geçerli sayfayı görüntüleyen kullanıcının sunucu adıdır.
*/
$hostname=gethostbyaddr($_SERVER['REMOTE_ADDR']);
echo $hostname."<br/>";
/*
* Geçerli sayfayı görüntüleyen kullanıcının tarayıcı bilgileri.
*/
$hostname=$_SERVER['HTTP_USER_AGENT'];
echo $hostname."<br/>";

?>



Ekran Görüntüsü

Kodunu çalıştırdığımızda yukarıda ki gibi bir ekran görüntüsü elde ederiz.

Görüldüğü gibi bilgisayar adımızı ip adresimizi ve browser bilgilerimizi almış bulunmaktayız.
Unutmada ::1 dediği olay localhost da çalıştırdığımızdan oldu. Sunucu ortamında çalıştırır iseniz gerçek ip adresini öğrenebilirsiniz.

DellPC dediği olay bilgisayarımızın kullanıcı adı

Mozilla ile başlayan yerdeki Windows NT 6.2 Win-8 Wow64 ise x64 bit olduğu anlamına gelmektedir. Tabi bunları daha kullanışlı hale getirmek için php ile parçalama işlemi yapabilirsiniz.

Umarım faydalı olur.


Root Nedir ? Ne İşe Yarar ?

1. Root Erişimi Nedir ?
“Root” sözcüğü linux sistemlerindeki en yetkili kullanıcıyı ifade eder. Windows sistemlerinde bu kullanıcıyı “Administrator” olarak biliyoruz. Telefonunuza root erişimi sağlamak da işletim sistemini modifiye edilerek size “root” kullanıcısının haklarını vermek, böylece sistem üzerinde tam kontrol hakkı tanımaktır. Bunu da sisteme su (superuser) programını yükleyerek isteyen programlara bu yetkiyi tanıyarak gerçekleştirir.Bu sayede telefonunuz üzerinde gelen gereksiz programlardan kurtulmaya tutun da, hosts dosyasını değiştirmek, hatta telefonunuza başka bir ROM yüklemeye kadar root olmadan yapamayacağınız bir çok işlemi yapmanızı sağlamakta. Root işlemi cihazınızı garanti dışı bırakabilir,bazı yöntemler ile tekrar garanti içine alınabilir.



2. Root İşleminin Yararları 
Root işlemini Sistem üzerinde TAM KONTROL sağlar. 
Root işleminin en temel yararı, size sistemin daha önce erişemediğiniz köşelerine, detaylarına erişim hakkı (sadece okuma hakkı değil, yazma / değiştirme hakkı da) sunmasıdır. Bu sayede tüm sistem dosyalarını silebilir, değiştirebilir, yeni temalar yükleyebilir, gereksiz sistem programlarını sistemden kaldırabilirsiniz.


Örneğin:

1: Samsung,HTC,LG vb. şirketlerin kendi uygulamalarını kaldırabilir cihazda büyük ölçüde hafızada yer açabilirsiniz.
2: Cihazı Overclock yaparak biraz daha üst düzey performans alabilirsiniz
3: Cihazı kişiselleştirebilir ve yeni temalar yükleyebilir ve bunlar gibi birçok şey yapabilirsiniz


ASP.NET MSSQL'den Excel'e Veri Aktarma

Merhaba arkadaşlar.

Bu yazımızda Asp.net (c#) ile uygulama geliştiren arkadaşların işine yarayacağını düşündüğüm bir kodu paylaşmak istiyorum. Bu kod asp.net ile geliştirmiş olduğunuz sistemde gridview içerisine çekmiş olduğunuz bilgileri excel ortamına aktarmanıza olanak sağlıyor. Kod basit olup daha detaylı excel ortamı için bir sonraki yazımızı takip etmenizi öneriyoruz. Şimdi dilerseniz kod ortamına geçelim.
Bunun için öncelikle visual studio ide'mizde asp.net empty project ile boş bir asp.net projesi oluşturuyoruz. Şimdi solution ekranında projemiz üzerinde sağ tıklayıp Add -> new web form adımlarını izleyerek Default.aspx adında boş bir sayfa ekliyoruz.

Şimdi ise default.aspx sayfasına çift tıklayarak açıyoruz ve sayfamıza bir adet gridview ekliyoruz

Bunu isterseniz tools sekmesinden sürükle bırakla isterseniz Html tarafında kod ile ekleyebilirsiniz.
Biz sürükle bırak yöntemi ile bir adet gridview ekrana bırakıp hemen html tafına geçiyor ve adını düzeltiyoruz.

<asp:gridview id="gvKayitlar" runat="server"></asp:gridview>

Örnek olarak gvKayitlar adını kullandım.

Bunun hemen ardından design kısmında formumuza bir adet buton sürükleyip bırakıyoruz. Butonumuzun adı da btnaktar olsun

şimdi Ctrl+F7 veya design bölümündeyken ekrana çift tıklayarak c# kod bölümüne geçiyoruz.

Burada öncelikle database işlemlerimizi gerçekleştiriyoruz. Biz bu adımı yapmayacağız çünkü bu işlemleri bildiğinizi var sayıyorum.

Örnek gridview doldurma fonksiyonumuz

private void gvDoldur(){
    // kendi kullanmış olduğunuz bir sınıfınız var ise siz onu kullanın ben örnek olsun diye aşağıdaki 
    //şekilde kullandım
 DataTable dtKayitlar = cyMetodlar.GetDataTable("Select * From kullanicilar");
// gridView nesnemizin dataTable dan kayıt çekeceğinizi söylüyoruz
 gvKayitlar.DataSource = dtKayitlar; 
// gridView nesnemize yüklenen kayıtları görünmesi için DataBind fonksiyonunu çağırıyoruz
 gvKayitlar.DataBind();
}


Şimdi ise bizim için en önemli kısma geldik. Kayıtlarımızı excele aktarma fonksiyonu
private void ExceleAktar()
{
    Response.Clear();
    Response.AddHeader("content-disposition", "attachment;filename=TumKatilimcilar.xl
    Response.Charset = "";
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    Response.ContentEncoding = System.Text.Encoding.GetEncoding("windows-1254");
    Response.Charset = "windows-1254";
    Response.ContentType = "application/vnd.xls";
    System.IO.StringWriter stringWrite = new System.IO.StringWriter();
    System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
    string header = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" xmlns=\"http://www.w3.org/1999/xhtml\">\n<head>\n<title></title>\n<meta http-equiv=\"Content-T />\n<style>\n</style>\n</head>\n<body>\n";
    form1.Controls.Clear();
    form1.Controls.Add(gvListe);
    form1.RenderControl(htmlWrite);
    Response.Write(header + stringWrite.ToString());
    Response.End();
}


Sayfamız ilk yüklendiğinde çalışacak kodumuz

protected void Page_Load(object sender, EventArgs e)
{
  gvDoldur(); // fonksiyonumuzu çağırıyoruz
}

bu işlemlerin ardından butonumuza tıklandığı zaman verilerimizi aktarmak için buton click olayına aşağıdaki kodu yazıyoruz

protected void btnaktar_Click(object sender, EventArgs e)
{
  ExceleAktar()
}

Hepsi bu kadar şimdi ise default.aspx sayfasına sağ tıklayıp Preview  linkinden browser ortamında çalıştırıyoruz.


Faydalı olması dileğiyle