YUKARI

Jquery ile Database Kullanarak Haber Manşet Yapımı

En çok aradığım bir sistemdi bu. Netteki örneklere baktığımda genellikle database kullanmadan yapılan örnekler mevcut. Mehmet Duran arkadaşımızın yaptığı örneği inceledim basit ve gayet hoş bir örnek olmuş. Yorumları okuduğumda genellikle sorulan soru şu; Bu örneğin database 'den çekilen hali yokmu?. Bende Mehmet Duran 'nın bu örneğini aldım ve bildiğim kadarıyla oynamalar yapıp resimleri ve haber başlıklarını database'den çektim.Şimdi nasıl yapıldığını inceleyelim;

Head Tagları arasına Javascript kodlarını ve Css kodlarını ekliyoruz.


<script type="text/javascript" src="jquery-1.2.6.pack.js"></script>    <script type="text/javascript">      var aktif = 1; var timer; var adet;      $(document).ready(function(){        $("#manset").show();        $("#manset div").hide();        $("#manset div:first").show();        adet = $("#manset div").length;        sayfalar();        renk(1);        timer = setInterval(degistir,3000);      });      function degistir()      {        $("#manset div:nth-child("+aktif+")").slideUp(100);        aktif = (aktif + 1) % adet;        if(aktif == 0) aktif = adet;        $("#manset div:nth-child("+aktif+")").slideDown(200);        renk(aktif);      }      function tikla(deger)      {        renk(deger);        $("#manset div:nth-child("+aktif+")").slideUp(100);        aktif = deger;        $("#manset div:nth-child("+aktif+")").slideDown(200);        clearInterval(timer);        timer = setInterval(degistir,3000);      }      function renk(deger)      {        $("#sayfa_no span").css("background-color","#ccc")        $("#sayfa_no span:nth-child("+deger+")").css("background-color","#eee");      }      function sayfalar()      {        var sayfa_no = "";        for(var i = 1; i <= adet; i++)        {          sayfa_no += "<span class='sayfa' onclick=tikla("+i+")>"+i+"</span>"        }        $("#sayfa_no").html(sayfa_no);      }    </script>    <style type="text/css">      *{padding:0; margin:0;}      body{margin:10px;cursor:default;}      #manset {cursor:default;font-family:trebuchet ms; width:440px; height:355px; border:solid 1px #ccc; background-color:#eee; padding:5px;margin:0 0 5px 0;display:none;}      #manset div{font-family:trebuchet ms; width:440px; height:330px;}      .sayfa{float:left;padding:2px 0;margin:0 2px 0 0;color:#369;cursor:default;font-family:calibri;font-size:11pt;border:solid 1px #369; width:20px; text-align:center;}      .manset_f{float:left;border:0;}      .manset_h{float:left;background-color:#dcdcdc;color:#333;width:420px;margin:0 0 5px 0;height:20px;font-size:11pt;color:#800;font-weight:bold;padding:0 10px;}      #manset a{text-decoration:none; cursor:default;}    </style>

Şimdi aspx sayfamızı hazırlıyoruz.


<div id="manset">
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="AccessDataSource1" >
<ItemTemplate>
<div>
<a  href="#"><span class="manset_h"><%#Eval("baslik") %></span> <img src='<%#Eval("resim") %>' class="manset_f" /></a></div>
</ItemTemplate>
</asp:Repeater>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/App_Data/db.mdb"
SelectCommand="SELECT * FROM [habermanset] ORDER BY [id] DESC">
</asp:AccessDataSource>
</div>
 



 

 

Örnek Dosyayı İndir

jquery_manset.rar (192,02 kb)

16. March 2010 19:10 by Administrator | Comments (4) | Permalink

Multi Upload ve Multi Resize

Nette araştırmama rağmen tam istediğim gibi bir kod bulamadım. Kendi projemde lazım oldu ve bir çok kişininde bu tarz birşey aradığını düşünüyorum. Şimdi nasıl yapıldığına bir göz atalım.

İlk önce kaç adet resim ekleyip resize yapıcaksak ona göre FileUpload kontrolü ve 1 adet Button ekleyin .


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Multi Upload ve Multi Resize</title>
</head>
<body style="font-family: Verdana; font-size: 10pt">
    <div style="padding: 10px">
        <form id="form1" runat="server">
            <div>Resimler jpeg olmalıdır<br />
            </div>
            <div><asp:FileUpload ID="FileUpload1" runat="server" style="width: 350px"/>
                <br />
 
                 <asp:FileUpload ID="FileUpload2" runat="server" style="width: 350px"/>
 
                 <br />
 
                 <asp:FileUpload ID="FileUpload3" runat="server" style="width: 350px"/>
 
                 <br />
            </div>
           
            <p><asp:Button ID="Submit" runat="server" Text="Upload" onclick="Submit_Click" /></p>
        </form>
    </div>
</body>
</html>

Şimdi Default.aspx.cs Kodlarımızı inceleyim.

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Data.OleDb;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Drawing;

using System.Drawing.Drawing2D;

using System.Drawing.Imaging;

using System.IO;

public partial class Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

    {

        

    }

}

    protected void Submit_Click(object sender, EventArgs e)

    {

            if (IsPostBack)

            uploadveresize();

    }

 

private void uploadveresize()

 {

  // ana dizini alıyoruz

  string root = Server.MapPath("~/");

 

  if (!root.EndsWith(@"\"))

   root += @"\";

 

// resim klasörü yolunu belirtiyoruz

  string fileDirectory = root + @"\resim\";

 

// Eğer resim klasörü yoksa oluşturuyoruz

  if (!System.IO.Directory.Exists(fileDirectory))

   System.IO.Directory.CreateDirectory(fileDirectory);

 

 for (int i = 0; i < Request.Files.Count; i++)

  {

 

   HttpPostedFile fi = Request.Files.Get(i);

 

   byte[] fileBytes = new byte[fi.ContentLength];

  

   using (System.IO.Stream stream = fi.InputStream)

   {

    stream.Read(fileBytes, 0, fi.ContentLength);

   }

  // rastgele isim oluşturuyoruz

   string fileName = Guid.NewGuid().ToString();

 

//buyuk resim kaydediyoruz genişliği 500 yüksekliği uzunluğuna orantılı kısalıyor.

   File.WriteAllBytes(fileDirectory + fileName + ".jpg", ResizeImageFile(fileBytes, 500));

             

                                                //ufak resim kaydediyoruz yine aynı genişliği 100 yüksekliği uzunluğuna orantılı kısalıyor.

   File.WriteAllBytes(fileDirectory + fileName + "_kucuk.jpg", ResizeImageFile(fileBytes, 100));

            

   fileBytes = null;

 

  }

 

 

 }

//resimler resize ediliyor

 private static byte[] ResizeImageFile(byte[] imageFile, int targetSize)

 {

  using (System.Drawing.Image oldImage =

   System.Drawing.Image.FromStream(new MemoryStream(imageFile)))

  {

   Size newSize = CalculateDimensions(oldImage.Size, targetSize);

 

   using (Bitmap newImage =

    new Bitmap(newSize.Width,

     newSize.Height, PixelFormat.Format24bppRgb))

   {

    using (Graphics canvas = Graphics.FromImage(newImage))

    {

     canvas.SmoothingMode = SmoothingMode.AntiAlias;

     canvas.InterpolationMode = InterpolationMode.HighQualityBicubic;

     canvas.PixelOffsetMode = PixelOffsetMode.HighQuality;

     canvas.DrawImage(oldImage,

      new Rectangle(new Point(0, 0), newSize));

MemoryStream m = new MemoryStream();

     newImage.Save(m, ImageFormat.Jpeg);

     return m.GetBuffer();

    }

   }

  }

 }

 

 // Yeni boyutlandırma hesaplamaları yapılıyor

 private static Size CalculateDimensions(Size oldSize, int targetSize)

 {

  Size newSize = new Size();

  if (oldSize.Height > oldSize.Width)

  {

   newSize.Width =

    (int)(oldSize.Width * ((float)targetSize / (float)oldSize.Height));

   newSize.Height = targetSize;

  }

  else

  {

   newSize.Width = targetSize;

   newSize.Height =

    (int)(oldSize.Height * ((float)targetSize / (float)oldSize.Width));

  }

  return newSize;

 }

 

   

}

Kodlarımız hepsi bukadar. Biraz karışık gelmiş olabilir fakat göreceksinizki çok kullanışlı bir kod. Kodlarla ilgili ufak bir şey söylemek isytiyorum. Farkındaysanız FileUpload1 FileUpload2 FileUpload3 isimlerini hiç kullanmadık. Yani siz oraya 10 tane file upload ekleyin hepsinin hem küçük halini hemde büyük halini size kaydeder. Kodları birdefa yazıyorsunuz FileUpload kontrolünü çoğaltıp azaltmak size kalmış.

16. March 2010 01:03 by Administrator | Comments (0) | Permalink

The evaluation period for Visual Studio Trial Edition has ended

Bu hatayla Visual Studio kullananlar çoğunlukta. Peki nasıl tekrardan VS yi aktif hale getiririz.

İlk başta denetim masasına girip Program Ekle / Kaldır 'a tıklıyoruz. Daha sonra VS yi buluyoruz ve sağ tıklayıp Kaldır/Değiştir diyoruz. Şimdi satın aldığınız yeni key numarasını bu ekranda giriyoruz Visual Studio aktif hale gelecektir. 

6. March 2010 01:04 by Administrator | Comments (0) | Permalink

ASP.Net ile Site haritası (SiteMap) oluşturma.

 

 

 

 

 

 

 

 

Bu makalede asp.net ile site haritası başka bir deyişle sitemap oluşturmayı göstereceğim. Ben genellikle kendi sitelerimde bu kodu kullanıyorum. Yapamayan arkadaşlar olursa burdan yardımcı olmaya çalışırım.












Öncelikle;
using System.Text;
using System.Net;
using System.IO;
using System.Data.OleDb;
ekliyoruz.
Şimdi kodlarımızı yazmaya başlayalım.
        //Sayfanın içeriğini komple temizliyoruz...
        Response.Clear();
        //Sayfanın formatını XML olduğunu belirliyoruz...
        Response.ContentType = "text/xml";
        //XML oluşturmak için XmlTextWriter tanımlıyoruz ve
        //Encoding UTF8 olarak belirliyoruz...
        XmlTextWriter objX = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
        //Bu bölümde sırasıyla elementlerimizi oluşturuyoruz.
        objX.WriteStartDocument();
        objX.WriteStartElement("urlset");
        //Site Map standartlarını belirliyoruz...
        objX.WriteAttributeString("xmlns", "http://www.sitemaps.org/schemas/sitemap/0.9");
        objX.WriteAttributeString("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
        objX.WriteAttributeString("xsi:schemaLocation", "http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd");
        //Sitenin sabit sayfalarını static olarak ekliyoruz...
        objX.WriteStartElement("url");
        objX.WriteElementString("loc", http://www.siteadi.com/);
        objX.WriteElementString("lastmod", DateTime.Now.ToString("yyyy-MM- dd"));
        objX.WriteElementString("changefreq", "daily");
        objX.WriteElementString("priority", "1");
        objX.WriteEndElement();
        OleDbConnection objConnection = new OleDbConnection ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("App_Data\\dbninismi.mdb"));
        objConnection.Open();
        //Ben blogla ilgili örnek yapıyorum
        string sql = "SELECT id,tarih, baslik FROM altkategori ORDER BY id DESC";
        OleDbCommand objCommand = new OleDbCommand(sql, objConnection);
        OleDbDataReader objReader = objCommand.ExecuteReader();
        while (objReader.Read())
        {
            objX.WriteStartElement("url");
            objX.WriteElementString("loc", http://www.siteadi.com/ + ReWritePath(objReader["id"].ToString(), objReader ["baslik"].ToString()) );
            objX.WriteElementString("lastmod", objReader.GetDateTime(1).ToString("yyyy-MM-dd"));
            if (objReader.GetDateTime(1).ToShortDateString() == DateTime.Now.ToShortDateString())
            {
                objX.WriteElementString ("priority", "1");
                objX.WriteElementString ("changefreq", "daily");
            }
            else
            {
                int fark = TarihFark (objReader.GetDateTime(1), DateTime.Now);
                if ((fark > 1) && (fark <= 7))
                {
                    objX.WriteElementString("priority", "0.5");
                    objX.WriteElementString("changefreq", "weekly");
                }
                else if (fark > 7)
                {
                    objX.WriteElementString("priority", "0.1");
                    objX.WriteElementString("changefreq", "monthly");
                }
            }
            objX.WriteEndElement();
        }
        objReader.Close();
        objConnection.Close();
        objX.WriteEndElement();
        objX.WriteEndDocument();
        objX.Flush();
        objX.Close();
        Response.End();
    }
    public int TarihFark(DateTime tr1, DateTime tr2)
    {
        TimeSpan Sonuc;
        Sonuc = (tr2 - tr1);
        return (Sonuc.Days);
    }
Kolay Gelsin...
24. February 2010 01:24 by Administrator | Comments (3) | Permalink

C# - VB.Net veya VB.Net - C# Çeviri Sitesi

Çok profesyonelce hazırlanmış bir site. Çeviriler %90 a kadar doğru çıkıyor. Bazen aradığım kod VB.Net olduğunda hemen bu siteye girip kodları C# a çeviriyordum ufak tefek hatalar oluyor karışık değil zaten direk düzeltiyorsunuz.

VB.Net to C#

C# to VB.Net

Kolay Gelsin..

1. September 2009 17:09 by Administrator | Comments (0) | Permalink

Zararlı olabilecek bir değer Request.Form algılandı

Zararlı olabilecek bir değer Request.Form algılandı

Bu hatayı almak istemiyorsanız.

Sayfanızın başına ValidateRequest="false" komutunu eklerseniz bu hatayı birdaha almazsınız.

Örnek;

<%@ Page Language="C#" ValidateRequest="false" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Default" %>

Kolay Gelsin....

15. November 2008 16:46 by Administrator | Comments (0) | Permalink

Web Sitesinden Veri Çekme

Web Sitesinden Veri Çekme

Herhangi bir web sitesinden istediğiniz bir veriyi nasıl çekebileceğimizi anlatacağım.Bu işlemi yapabilmek için C# İle String işlemleri konusunu biraz incelemeniz gerekiyor.Bu makalede kullanacağım kodlar şunlar;

IndexOf  : Bu fonksiyon, web sitesinden çekeceğimiz verinin başlangıç noktasını almamıza yarıyor.

Örnek kullanım :
String.IndexOf("başlangıçkelimesi");

Substring : Bu fonksiyon yazı içindeki başlangıç noktasını ve uzunluğunu belirtmiş olduğumuz aralığı size verir.İkinci parametreyi yazmazsanız başlangıç noktasını belirttiğiniz yerden String i sonuna kadar okur ve geriye tekrar string olarak döndürür.

Örnek Kullanım :

string cumle  = "Merhabalar kodarsivi.com'a hoşgeldiniz.";
string cumle1 =  cumle.Substring(12);

 

cumle1'in değeri "kodarsivi.com'a hoşgeldiniz" oldu.

İlk öncelikle sayfamıza iki tane sınıf ekleyeceğiz;

using System.Net;
using System.Text;

 

Bu iki sınıfı ekledikten sonra kodlarımızı yazmaya başlayabiliriz.

Uri siteUri = new Uri("http://www.siteadi.com");
WebRequest wr = WebRequest.Create(siteUri);
WebResponse wer = wr.GetResponse();
Stream strX = wer.GetResponseStream();
StreamReader strR = new StreamReader(strX, Encoding.GetEncoding("windows-1254"));
string icerik = strR.ReadToEnd();

 

Bu kodlarla siteadi.com daki bilgileri ( kaynak kodunu ) içerik adındaki Stringe atadık.Diyelimki sayfadaki haber başlığını çekmek istiyoruz.

int baslikbas = icerik.IndexOf("<h1>");
int baslikson = icerik.IndexOf("</h1>");
string basliksonuc = icerik.Substring(baslikbas, baslikson);
Label1.Text = basliksonuc; 

 

Yukarıdakı işlemde baslikbas adında bir integer tanımladık ve bu bizim siteden alacağımız verinin başlangıç noktasını belirtiyor.baslikson ise alacağımız verinin bitiş noktasını belirliyor.En sonundada Label1.Text e sonucu atıyorum ve bu Label1 i web sayfamda istediğim bir yere koyduğumda siteadi.com dan gelen başlığı görüntülemiş oluyorum.Burda size biraz karışık gelmiş olabilir ama siz kendinize bir site belirleyin ve o siteden istediğiniz bir veriyi almaya çalışın.İlk başta direk alamayabilirsiniz yarım yamalak olabilir ama biraz kurcalayarak sonuca varabilirsiniz.Bu yazdığım kodlar sadece bir başlangıç bunu geliştirmek sizin elinizde.

Başka bir makalede görüşmek dileğiyle

 

15. November 2008 02:58 by Administrator | Comments (11) | Permalink

Asp.Net Türkçe Karakter Problemi

Asp.Net Türkçe Karakter Problemi

Local de düzgün çalışıyor fakat sunucuya atınca harfler bozuk çıkıyor diyorsanız yapmanız gerekn şey Web.Config dosyanıza aşağıdaki kodu eklemek.

<system.web> tagları arasına;

<globalization fileEncoding="iso-8859-9" requestEncoding="iso-8859-9" responseEncoding="iso-8859-9" />

kodu eklemeniz yeterli olacaktır.

Kolay Gelsin

12. November 2008 09:30 by Administrator | Comments (1) | Permalink

Site İçi Arama Motoru Yapmak

Asp.Net ile Site İçi Arama Motoru Yapmak

Forumlarda bu konuyla ilgili çoğu kişi konu açmış veya açılmış olanlardan örnek vs. istemişler.Bana göre bu konu önemli bir konu ve bununla ilgili döküman, makale diğer konulara nazaran okadar sıklıkta değil.Aslında benimde fazla bir bilgim yok ama bende bu site içi arama nasıl olur onun mantığını göstermeye çalışacağım.

Öncelikle yeni bir web projesi oluşturuyoruz ve Default.aspx sayfamıza sol taraftaki toolbox dan 1 adet TextBox ve bir adet Button yerleştiriyoruz.

Daha sonra projemize yeni bir web form ekliyoruz ve bununda adını arama.aspx olarak kaydediyoruz.

Şimdi Default.aspx sayfamıza dönelim ve buttonumuza çift tıklayıp Button1_Click event ını açıyoruz. ve aşağıdaki kodu yazıyoruz.

Response.Redirect("arama.aspx?kelime=" + TextBox1.Text + "");

Burada arama.aspx sayfasına kelime adında bir parametre gönderdik ve bu parametrenin bir değeri var oda TextBox daki yazılan değer.

Tekrar arama.aspx sayfamızı açalım ve Page_Load ımıza aşağıdaki kodlarımızı sırasıyla teker teker yazalım.Açıklamasını kodların altına yazacağım.

string gelen = guv(Request.QueryString["kelime"].ToString()); 

QueryString ile gelen veriyi gelen adında bir stringe atıyoruz ve bunu "guv" adında bir süzgeçten geçiriyoruz.Guv nerden geldi demeyin aşağıda açıklıcam.

OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.jet.oledb.4.0; Data source=" + Server.MapPath("App_Data\\database.mdb"));

baglanti.Open();

baglanti nesnemizi oluşturuyoruz ve bağlantımızı açıyoruz.

OleDbDataAdapter adapter = new OleDbDataAdapter("Select * From makale WHERE kategoriadi and baslik and aciklama LIKE '%" + gelen.Replace("'", "'") + "%'", baglanti);

DataAdapter imizi oluşturduk ve sorgumuzu yazdık.Gördüğünüz gibi bütün incelik sorguda bitiyor.Siz isterseniz bu sorguyu dahada geliştirebilirsiniz ben bunu kullanıyorum .

DataSet Ds = new DataSet();

adapter.Fill(Ds, "Tablo");

Repeater1.DataSource = Ds;

Repeater1.DataBind();

Daha sonra yukarıdaki işlemleri yapıyoruz ve arama.aspx sayfamıza bir tane Repeater sürükleyip bırakıyoruz.

Şimdi size bu "guv" adını verdiğim süzgeçten bahsedeceğim.

public string guv(string cevir)

{

cevir =
Regex.Replace(cevir, ",", "");

cevir = Regex.Replace(cevir, "/", "");

cevir =
Regex.Replace(cevir, "\n", "");

cevir = Regex.Replace(cevir, "/?", "");

cevir =
Regex.Replace(cevir, "/*", "");

cevir = Regex.Replace(cevir, "'", "");

cevir =
Regex.Replace(cevir, "&", "");

cevir = Regex.Replace(cevir, "<", "");

cevir = Regex.Replace(cevir, ">", "");

cevir = Regex.Replace(cevir, "=", "");

return cevir;

}

Buradaki Replace 'ler tamamiyle güvenlik için yazılmıştır.Bunlarda neyin nesi diyebilirsiniz.Bknz. Sql Injection

Şimdi arama.aspx sayfanıza eklediğiniz Repeater kontrolune ekleyeceğiniz kodlardan bahsedeyim.Aslında bildiğiniz şeyler ama yinede yazalım yarım kalmasın.

<asp:Repeater ID="Repeater1" runat="server">

<ItemTemplate>

<%#Eval("baslik")%></ br>

</ItemTemplate>

<SeparatorTemplate>

<hr style="border-style: dotted none none none; border-color: #C0C0C0; border-top-width: 2px;" />

</SeparatorTemplate>

</asp:Repeater> 

siz isterseniz daha fazla şeylerde listeleyebilirsiniz.

Takıldığınız bir yer olursa burdan yardımcı olmaya çalışırım başka bir makalede görüşmek dileğiyle...

 

9. November 2008 11:57 by Administrator | Comments (9) | Permalink

ListView ile DataPager Kullanarak Sayfalama Yapma

ListView ile DataPager Kullanarak Sayfalama Yapma

Merhaba Arkadaşlar.

ListView ve DataPager Asp.Net 3,5 ile gelen bir kontrolüdür.Bu iki kontrolü birarada kullanarak sayfalama yapmak mümkün.Kontrolün kullanılışı GridView kadar basit olmasada bir iki adımda kolaylıkla sayfalama yapabiliyoruz.Şimdi adım adım nasıl sayfalama yapacağımızı inceleyelim.

1.Öncelikle DataBase 'mizi oluşturalım(Ben Access Kullandım).15-20 Satırlık basit bir db yeterlidir.

2.Visual Studio ile boş bir Web Projesi oluşturup ( .Net Framework 3.5 Seçilmelidir) sayfamıza sol taraftan ToolBox ' dan ListView kontrolümüzü sürükleyip bırakıyoruz.

3.Sayfamıza bir adet AccessDataSource ekleyerek gerekli işlemleri yapıyoruz ve daha sonra bu AccessDataSource 'u ListView e bağlıyoruz.

4.Şimdi kod kısmına geliyoruz ve ilk olarak <LayoutTemplate> tagını oluşturuyoruz.

<asp:ListView ID="ListView1" runat="server" DataSourceID="AccessDataSource1">

<LayoutTemplate>

<asp:PlaceHolder ID="groupPlaceHolder" runat="server"></asp:PlaceHolder>

</LayoutTemplate>

</asp:ListView>

 

5.Şimdide <GroupTemplate> tagını oluşturuyoruz.

<asp:ListView ID="ListView1" runat="server" DataSourceID="AccessDataSource1">

<LayoutTemplate>

<asp:PlaceHolder ID="groupPlaceHolder" runat="server"></asp:PlaceHolder>

</LayoutTemplate>

<GroupTemplate>

<asp:PlaceHolder runat="server" ID="itemPlaceHolder"></asp:PlaceHolder>

</GroupTemplate>

</asp:ListView>

 6.Ve son olarakda <ItemTemplate> tagını oluşturuyoruz.

<asp:ListView ID="ListView1" runat="server" DataSourceID="AccessDataSource1">

<LayoutTemplate>

<asp:PlaceHolder ID="groupPlaceHolder" runat="server"></asp:PlaceHolder>

</LayoutTemplate>

<GroupTemplate>

<asp:PlaceHolder runat="server" ID="itemPlaceHolder"></asp:PlaceHolder>

</GroupTemplate>

<ItemTemplate>

<%#Eval("adi") %><br />

</ItemTemplate>

</asp:ListView>

 

Sayfamızı çalıştırdığımızda Db'mizden gelen verilerimizin yukarıdan aşağıya doğru sıralandığını görüyoruz.Fakat 100-150 satır olduğunu düşünelim.Ozaman sayfamız epey bi aşağılara doğru kayacaktır.Hemen ListView kontrolünün altına DataPager kontrolümüzü ekleyelim ve PagedControlID="ListView1" olarak ayarlıyalım.PageSize 10 olarak ayarlıdır.Siz istediğiniz gibi belirleyebilirsiniz.

Arkadaşlar takıldığınız bir yer olursa burdan yardımcı olmaya çalışırım.Herkese kolay gelsin.

Başka bir makalede görüşmek dileğiyle....

5. November 2008 12:04 by Administrator | Comments (2) | Permalink

Etiket Bulutu

Yazar Hakkında

Bu site görüşlerin paylaşıldığı kişisel bir blogdur. Site içeriğinden meydana gelebilecek sorunlardan site sahibi sorumlu değildir.Sitede yazılan her yazı tarafımca yazılmış olup, izinsiz veya link verilmeden alıntı yapılamaz. Yorumlar site sahibi tarafından onaylandıktan sonra yayınlanacaktır.

©KodArsivi.Net