En iyi yanıtlayıcılar
Döviz Çeviri String Format Hesaplamalar

Soru
-
Merhaba
Arkadaşlar textbox da aldığım tl değerini Euro Ve Dolar'a çevirmek istiyorum ama textboxtaki değeri nasıl alıyorsa artık sonuç 0,00 olarak geliyor.
lblTlCevirUsd.Text = string.Format("{0:#.00}", Convert.ToDecimal(Convert.ToDecimal(txttldeger.Text) / Ceviriusd()) / 100);
Textbox'taki değeri alıyor ve Günlük dolar kuruna bölünüyor.Sonucu labele aktarmaya çalışıyor .
Ayrıca Hata Durumu olursa try catch blokları programı kasıyor ,kasmaması için ne yapmalıyım .
Teşekkür Ederim
Yanıtlar
-
Galiba textBox içinde TL veya ₺ gibi sayısal olmayan karakterler var. Bu durumda Culture kullanarak yapmalısın
private void button1_Click(object sender, EventArgs e) { decimal tlDeger; if (decimal.TryParse(textBox1.Text, NumberStyles.AllowTrailingWhite | NumberStyles.AllowCurrencySymbol, CultureInfo.CurrentCulture, out tlDeger)) { decimal usd = 3.45M; // Burası CeviriUsd den gelecek Text = string.Format(CultureInfo.CurrentCulture,"{0:c2}", tlDeger / usd / 100); } }
- Yanıt Olarak İşaretleyen Yunus Bulduk 13 Şubat 2017 Pazartesi 14:46
-
label1.Text = (tlDeger * usd).ToString("c", tr);
Yukardaki değişikliği dener misin?- Yanıt Olarak İşaretleyen Yunus Bulduk 13 Şubat 2017 Pazartesi 20:20
Tüm Yanıtlar
-
-
-
Galiba textBox içinde TL veya ₺ gibi sayısal olmayan karakterler var. Bu durumda Culture kullanarak yapmalısın
private void button1_Click(object sender, EventArgs e) { decimal tlDeger; if (decimal.TryParse(textBox1.Text, NumberStyles.AllowTrailingWhite | NumberStyles.AllowCurrencySymbol, CultureInfo.CurrentCulture, out tlDeger)) { decimal usd = 3.45M; // Burası CeviriUsd den gelecek Text = string.Format(CultureInfo.CurrentCulture,"{0:c2}", tlDeger / usd / 100); } }
- Yanıt Olarak İşaretleyen Yunus Bulduk 13 Şubat 2017 Pazartesi 14:46
-
decimal tlDeger = Convert.ToDecimal(txttldeger.Text); decimal usd = Ceviriusd(); // Burası CeviriUsd den gelecek decimal euro = CeviriEuro(); lblTlCevirUsd.Text = (tlDeger / usd * 10000).ToString().Remove(6); //} lblTlCevirEuro.Text = (tlDeger / euro * 10000).ToString().Remove(6);
Bu şekilde tam değerler geliyor ama Textboxa girdğim tl değeri yükselince anlamsız ifadeler çıkıyor =( Sizin dediğiniz gibi yapmaya çalıştım ama olmadı =( Teşekkürler böyle kullanalım bakalım -
-
-
Hocam yani 254141 gibi bir değer girdiğimde 68703, gibi bir değer geliyor..Devexpress gibi TextBoxu nasıl sınırlandırabiliriz acaba?
Sorun ne? Verdiğiniz değerler 1 dolar = 3,70 TL döviz kuruna göre doğru değerler. 254 bin TL eşittir 68 bin dolar. TextBox sınırlandırması derken ne demek istiyorsunuz? -
Hocam yani 254141 gibi bir değer girdiğimde 68703, gibi bir değer geliyor..Devexpress gibi TextBoxu nasıl sınırlandırabiliriz acaba?
Sorun ne? Verdiğiniz değerler 1 dolar = 3,70 TL döviz kuruna göre doğru değerler. 254 bin TL eşittir 68 bin dolar. TextBox sınırlandırması derken ne demek istiyorsunuz?
-
Öncelikle şu onbinle çarpıp sonra ilk 6 rakamı alma cambazlığını bir yana bırakalım ve şunu deneyelim:
using System.Globalization;
...
CultureInfo tr = new CultureInfo("tr-TR");
label1.Text = (tlDeger / usd).ToString("c", tr);
- Düzenleyen A.M. Sabuncu 13 Şubat 2017 Pazartesi 18:50
-
Öncelikle şu onbinle çarpıp sonra ilk 6 rakamı alma cambazlığını bir yana bırakalım ve şunu deneyelim:
using System.Globalization;
...
CultureInfo tr = new CultureInfo("tr-TR");
label1.Text = (tlDeger / usd).ToString("c", tr);
decimal tlDeger = Convert.ToDecimal(txttldeger.Text); decimal usd = Ceviriusd(); // Burası CeviriUsd den gelecek //decimal euro = CeviriEuro(); //lblTlCevirUsd.Text = (tlDeger / usd * 10000).ToString().Remove(6); //lblTlCevirEuro.Text = (tlDeger / euro * 10000).ToString().Remove(6); CultureInfo tr = new CultureInfo("tr-TR"); lblTlCevirUsd.Text = (tlDeger / usd).ToString("c", tr);
Bu şekilde textbox'a 1 yazınca 0.00 tl yazıyor,10000 yazınca 0,27 olarak doğru sonucu buluyor hocam =( Çok kolay bir yanlışlık yapıyorum da anlayamadım ..
-
decimal tlDeger = Convert.ToDecimal(textBox1.Text);
decimal usd = 0.2645M;
CultureInfo tr = new CultureInfo("tr-TR");
label1.Text = (tlDeger / usd).ToString("c", tr);
Benim sistemimde TextBox'a 1 yazınca, Label 3,78 TL gösteriyor. 10000 yazınca, 37.807,18 TL gösteriyor. Ceviriusd() metodunu devre dışı bırakıp yukardaki kalın kısmı koduna doğrudan yazarsan ne oluyor?
-
decimal tlDeger = Convert.ToDecimal(textBox1.Text);
decimal usd = 0.2645M;
CultureInfo tr = new CultureInfo("tr-TR");
label1.Text = (tlDeger / usd).ToString("c", tr);
Benim sistemimde TextBox'a 1 yazınca, Label 3,78 TL gösteriyor. 10000 yazınca, 37.807,18 TL gösteriyor. Ceviriusd() metodunu devre dışı bırakıp yukardaki kalın kısmı koduna doğrudan yazarsan ne oluyor?
3,78 tl yazıyor hocam
Cevirusd metodu ;
public decimal Ceviriusd() { decimal USD = 0.0m; try { string anyDays = string.Format("http://www.tcmb.gov.tr/kurlar/today.xml"); var xmlDoc = new XmlDocument(); xmlDoc.Load(anyDays); USD = Convert.ToDecimal(xmlDoc.SelectSingleNode("Tarih_Date/Currency[@Kod='USD']/BanknoteSelling").InnerXml); } catch (Exception) { string a = ""; } return USD; }
-
label1.Text = (tlDeger * usd).ToString("c", tr);
Yukardaki değişikliği dener misin?- Yanıt Olarak İşaretleyen Yunus Bulduk 13 Şubat 2017 Pazartesi 20:20
-
-
-
label1.Text = (tlDeger * usd).ToString("c", tr);
Yukardaki değişikliği dener misin?
Biraz önce buna benzer birşey yapmıştık sanki ama olmamıştı şimdi sıkıntı yok hocam düzgün çalıştı =)
Yani sonuçta dövize yatırım doğru bir karar mı? :)
-
-
-
VS 2015 Update 3 hocam , programda görsellik ne kadar önemli hocam sizce yani zor çalışan kasan bir program mı daha avantajlı yoksa görsellik olmayan ama seri çalışan program mı .Bir de her ince ayrıntı görsellik programı kasar mı devexpress componentleri dahil
-
DevExpress kullanmıyorum o konuyu bilemem ama görsellik çok önemli. Windows Forms ya da WPF sistemi zorlamaz. Ancak oyun programları gibi uygulamalarda bu konuya odaklanmak gerek. Yoksa bu konu ile hiç meşgul olma. Güzel tasarlanmış bir program önemli fakat döviz kurlarını doğru çevirmesi de bir o kadar önemli!