C# İle Kayan Döviz Bandı
Merhaba, bugün blog’umun istatistiklerini incelerken arama motorlarından kayan döviz bandı diye aramalar geldiğini gördüm. Kayan döviz bandları bir çok haber sitesinde gördüğümüz, haber sitelerinin, ekonomi sitelerinin ve portalların vazgeçilmez unsurlarından biri olmuştur. Bugünkü yazımda “C#” ile kayan bir döviz bandı nasıl yapabiliriz ondan bahsetmek istiyorum.
Öncelikle kayan bandımızı HTML olarak tasarlayalım.
<marquee> <div id="DovizBandi"> <p><strong>Amerikan Doları:</strong> <span class="tip">Döviz Alış</span> - <span>1,2YTL_</span> || <span class="tip">Döviz Satış:</span> - <span>1,2YTL_ </span> || <span class="tip">Efektif Alış:</span> - <span>1,2YTL_ </span> || <span class="tip">Efektif Satış:</span> - <span>1,2YTL_</span></p> </div> </marquee>
CSS ile kayan döviz bandımızı şekillendirelim
<style type="text/css">
#DovizBandi{
font-family: verdana;
font-size: 11px;
background-color:#FFFFCC;
border: 1px dashed #333333;
whitespace: nowrap;
}
#DovizBandi .tip{
color: #FF0000;
font-weight: bold;
}
#DovizBandi span{
color: #999999;
font-weight: bold;
}
#DovizBandi p{
margin: 3px;
}
</style>
Evet artık bu aşamadan sonra kayan bandımızın programlamasına geçebiliriz. Kayan bandımız için visual studio muzda yeni bir web projesi açalım. Web projemizin içine bir adet “literal” kontrolü ekleyelim. Ve sayfamızın kod bölümüne geçip aşağıdaki kodları ekleyelim.
Kayan Döviz Bandı C# Kodu
protected void Page_Load(object sender, EventArgs e)
{
DovizAl();
}
private void DovizAl()
{
string strDb = string.Empty;
string htmlSpace = " ";
DataSet ds = new DataSet();
ds.ReadXml(
"http://www.tcmb.gov.tr/kurlar/today.xml"
);
strDb += "<marquee>";
strDb += "<div id=\"DovizBandi\">";
strDb += "<p>";
foreach (DataRow dr in ds.Tables["Currency"]
.Select(”ForexBuying <> ””
+ “and ForexSelling <> ””))
{
strDb += htmlSpace;
strDb += “<strong>”
+ dr["Isim"].ToString()
+ “(” + dr["Unit"].ToString()
+ htmlSpace
+ dr["Kod"].ToString() + “)”
+ “</strong>”;
strDb += htmlSpace;
strDb += “<span class=\”tip\”>”
+ “Döviz Alış:”
+ “</span>”;
strDb += htmlSpace + “-” + htmlSpace;
strDb += “<span>”
+ dr["ForexBuying"].ToString()
+ “YTL”
+ “</span>”;
strDb += htmlSpace;
strDb += “<span class=\”tip\”>”
+ “Döviz Satış:”
+ “</span>”;
strDb += htmlSpace + “-” + htmlSpace;
strDb += “<span>”
+ dr["ForexSelling"].ToString()
+ “YTL”
+ “</span>”;
strDb += htmlSpace;
strDb += “<span class=\”tip\”>”
+ “Efektif Alış:”
+ “</span>”;
strDb += htmlSpace + “-” + htmlSpace;
strDb += “<span>”
+ dr["BanknoteBuying"].ToString()
+ “YTL”
+ “</span>”;
strDb += htmlSpace;
strDb += “<span class=\”tip\”>”
+ “Efektif Satış:”
+ “</span>”;
strDb += htmlSpace + “-” + htmlSpace;
strDb += “<span>”
+ dr["BanknoteSelling"].ToString()
+ “YTL”
+ “</span>”;
}
strDb += “</p>”;
strDb += “</div>”;
strDb += “</marquee>”;
this.Literal1.Text = strDb;
}
Evet artık projemizi çalıştırıp sonuçları görebiliriz. Oldukça hoş görünen bir kayan döviz bandımız oldu.

Not: “<marquee></marquee>” etiketi (tag) XHTML standardı değildir, fakat günümüzde bir çok popüler internet tarayıcısı (browser) tarafından desteklenmektedir. Eğer web sayfanızın web standartlarına uyumuna özen gösteriyorsanız kayan döviz bandınızı “JavaScript” yardımıyla yapabilirsiniz.
Herkese iyi kodlamalar diliyorum…
tşkler bende bu kodu arıyodum çok işime yaradı.
merhaba;
peki bunu yazdığımız programı ledlerle oluşturduğumuz bir panoya nasıl aktarabiliriz
Led panonuza ait pc den yönetim sağlayan bir programlama arayüzü var ise (API) led panoya bu bilgileri yazdırmak mümkün. Eğer led panonuzun programlama arayüzü yok ise bu işi yapacak bir katman yazmak gerekir…
abicim sagolasın ya cok lazımdı işallah calısır emegine saglık
:D:D:D
PHP var iken düt net kimin neyine lazım. firefox`da çalışmayacak bir kod için kafa yormanın kime ne faydası var. şiddetle kınıyorum
Sayın Faytoncu,
PHP yada ASP .NET olmasının kullandığınız (Internet Tarayıcısı) browser ile ne gibi bir bağlantısı var, ve ne kastettiğinizi anlayamadım açıkçası.
Yukarıdaki örnek kod bildiğiniz bütün (Internet Tarayıcısı) browserlar da FireFox’ta dahil sorunsuz şekilde çalışır.
PEKI BU KODLARI RESIMLI ANLATSANIZ OLMAZMI YADA DAHA AYTINLATICI
cok hata verdi ama sonunda basardim tesekkur ederim calisiyor peki kendi sitesindeki gibi nasil yapabiliriz onuda anlatmak mumkunmu cok yeni basladim c# la aspx bunlar cok guzel oluyor kendimizi gelistirmekde sagolun
Merhaba tali_off
kendi sitesine yakın bir görüntü için, web sayfana bir datagrid kontrolu koyabilrisin, asp net 2.0′da gridview olarak geçiyor. Daha sonra datagrid’e “doviztablosu” ismini verdiğini varsayarsak aşağıdaki gibi bir kodlama yapman gerekir.
protected void Page_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
ds.ReadXml(
“http://www.tcmb.gov.tr/kurlar/today.xml”);
this.doviztablosu.DataSource = ds;
this.doviztablosu.DataBind();
}
Bu işlem aldığın sonuçları datagrid olarak web syfana yazdıracaktır. Ve daha sonra istersen datagrid e style uygulayarak görüntüsünü daha güzel hale getirebilirsin.
bu son yolladigin maalesef yapamadim cok ugrastim ama olmadi nedendir anlamadim..fakat senden ikisey rica edecegim…1.sayfadaki online sayisini gosteren bir kod yazabilirmisin 2.de cok onemli benim icin sayfayi 2 kere yada 3 4 kere girildiginde degisen bir reklam bolumu yapmak istiyorum boyle bir kod yazabilirmiyiz..cok tesekkur ederim saygilarimla ilginden dolayi cok sagol
tali_off
yukarıdaki kodu test etmeden yazdığım için birşey gözümden kaçmış. Aşağıdaki kod’u yazarsan çalışacaktır.
protected void Page_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
ds.ReadXml(
“http://www.tcmb.gov.tr/kurlar/today.xml”);
this.doviztablosu.DataSource = ds.Tables["Currency"];
this.doviztablosu.DataBind();
}
Kod’u kopayala yapıştır yöntemi ile kullanırsan tırnak işaretleri hata verebilir, tırnak işaretlerini düzeltmeni veya kod’u elle yazmanı tavsiye ederim.
Diğer önerilene gelince işlerimden arta kalan vaktimde değerlendirecem ve yeni bir konu olarak ekleyeceyim.
cok tesekkurler bir sey farketdim demeden gecemiyecegim cok ilgili ve alaka lisin ama benimde yapa bilecegim bir sey warsa sewe sewe yaparim ve gurur duyarim saygilarimla
Kullanışlı ve yararlı bir uygulama.
çalışmalarınızda başarılar
http://yoldas.cu.edu.tr
erkan merhaba ben sana bir teklifim olacak tabi kabul edersen…senin sitende dunyada bir ilk olacagina inandigim hatda butun yazarlari bile alt ust edecek bir seye imza atalim derim buraya yazmami istersen buraya yazarim yada ozelin warsa oraya sana konu acarak anlatayim..senden haber bekliyorum saygilarimla yerini doldurdum istersen silebilirsin bu yazdiklarimi..saygilarimla
Selam, iletişim için hakkında sayfasında yer alan e-posta adresini kullanabilirsiniz.
hocam bunun wordpress lisinden yok mu
selam,kayan yazının içeriğini değiştirmek istediğimizde bunu nasıl yapabiliriz?Örneğin site yöneticisi içeriği değiştirmek istediğinde bana ulaşmak zorunda kalmasın kendisine bu imkanı sunabileceğim bi arayüzü nasıl gerçekleştirebiliriz?Yardımcı olursan sevinirim….iyi çalışmalar.
Ya kardeş ben hiç bir şey anlamadım 3 tane ayrı ayrı kod vermişsin bunları nasıl birleştirecez,tek bir kod halinde verebilirmisin?
Kayan döviz bandını çalıştırmak için öncelikle CSS dosyasını oluşturman gerekiyor yani sıra olarak yukarıdan 2. sıradaki kodlama.
Daha sonra oluşturduğun “.aspx” sayfasının kod bölümüne 3. kodlamayı yazman ve tasarım bölümüne bir adet “aspnet literal” kontrolü eklemelisin ve CSS dosyası için HTML HEAD bölümünde tanımlama yapmalısın.
1. kodlama ise sadece tablosuz kayan bandımızın HTML tasarımını anlatan bilgi amaçlı örnek koddur bandın çalışması için gerekli değildir.
benim kafam basmıyor yaw,bu kodları hazır bir şekilde buraya veremezmisiniz rica etsem,bilgileri Tcmb den alınan hazır bir kod şeklinde alsak olmazmı?yani ben php veya html dosyası oluşturup içine atınca çalışacak bir kod istiyorum
Selam ellerine sağlık dostum , xxxxxxxx valla bende de aspx de yeniyim benmde şuan pek basmıyo ama eger gerçekden yapmak istiyorsan bastırttıcaksın yada bırakıcaksn buişleri çabalamadan hiçbirşey olmuyo
teşşekürler…işime bayağı yaradı marquee kodu…
Teşekkürler, yapmayı düşündüğüm şeyi yapmışsın, zaman kazanmış olduk sayende, teşekkürler paylaşımın için..
( Firefox ta çalışmayacağından, javascripti halini yapmak şart, yakında yazarım buraya javascriptli halinin kaynak kodlarını.. )