none
Lütfen yardım edin. 3 gündür arıyorum yapamıyorum. RRS feed

  • Soru

  • Merhabalar.

    Öncelikle amacımı anlatmak istiyorum. Print tuşuna bastığım zaman Baskı Önizleme ekranı gelmeden direk yazıcıdan çıktı almak istiyorum. Okulum için bir proje yapıyorum sonuna gelmek üzereyim ancak bunu bir türlü çözemedim. Aşağıdaki kodumda print tuşuna bastığım zaman direk yazıcıdan çıktı alabiliyorum ancak sorguyu bu kodun içine bir türlü gömemedim. Bu konuda yardımcı olursanın çok sevinirim. Kodda sorgu sonucunun eklenecek yerler TÜRKÇE, 15:00 15:20 TOPLANTI ODASI  buraları sorgu sonucu gelecek veriler olacak. 

    İlginiz için şimdiden çok teşekkür ediyorum. Sayfam açık kalıp sürekli refreshliyeceğim. Yardımlarınızı bekliyorum.

    //DİREK YAZICIDAN ALABİLDİĞİM KODUM AŞAĞIDADIR. SORGUMA GÖRE DEĞİŞECEK YERLER ( TÜRKÇE 15:00 15:20 TOPLANTI ODASI) BUNLAR TEMSİLİ YAZILMIŞTIR.YERİNE AŞAĞIDAKİ SQL KODUMA GÖRE BİLGİLER GELMESİNİ İSTİYORUM.

    sorgum şu şekilde

    select OgrenciID,Ders,Baslangic,Bitis,Yer * from ZamanTablosu whereOgrenciID=@OgrenciID

    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Drawing;
    using System.Drawing.Printing;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;

    namespace Rezervasyon
    {
        public partial class YazdirHizliRandevuAl : System.Web.UI.Page
        {

            protected void Page_Load(object sender, EventArgs e)
            {

            }
            protected void Button1_Click1(object sender, EventArgs e)
            {
                PrintDocument pDoc = new PrintDocument();
                pDoc.PrintPage += new PrintPageEventHandler(PrintPage);
                pDoc.Print();
            }

            private void PrintPage(object sender, PrintPageEventArgs e)
            {


                Font Baslik = new Font("Verdana", 12, FontStyle.Bold);
                Font TabloBasligi = new Font("Verdana", 12, FontStyle.Regular);
                Font Govde = new Font("Verdana", 12);
                SolidBrush Firca = new SolidBrush(Color.Black);
                StringFormat Format = new StringFormat();
                Format.Alignment = StringAlignment.Near;//sola yasla sağa yasla ortala
                e.Graphics.DrawString("Nurullah Gülgün - Randevu Programı", Baslik, Firca, 70, 100);
                e.Graphics.DrawString("DERS               BAŞLANGIÇ      BİTİŞ", TabloBasligi, Firca, 70, 130);
                e.Graphics.DrawString("-----------------------------------------", Baslik, Firca, 70, 140);
                e.Graphics.DrawString("TÜRKÇE               15:00          15:20", TabloBasligi, Firca, 70, 160);
                e.Graphics.DrawString("Yer:TOPLANTI ODASI", TabloBasligi, Firca, 70, 200);
                e.Graphics.DrawString("-----------------------------------------", Baslik, Firca, 70, 210);


            }

        }



    }

    21 Nisan 2017 Cuma 06:18

Yanıtlar

  • Sorgunuzun sonucunu bir DataTable olarak aldığınızı varsayarak;

    kodunuzun 

        e.Graphics.DrawString("TÜRKÇE               15:00          15:20", TabloBasligi, Firca, 70, 160);
        e.Graphics.DrawString("Yer:TOPLANTI ODASI", TabloBasligi, Firca, 70, 200);

    satırları yerine;

    --------------------------------------------------------------------------------------------------------------------

    int yPos = 160;

    string satir;

    foreach (DataRow dRow in dTable.Rows)

    {   

        satir = string.Format("{0}               {1}          {2}", dRow["Ders"], dRow["Baslangic"], dRow["Bitis"]);

        e.Graphics.DrawString(satir, TabloBasligi, Firca, 70, yPos);

        yPos += 40;

        satir = dRow["Yer"].ToString();

        e.Graphics.DrawString(satir, TabloBasligi, Firca, 70, yPos);   

        yPos += 40;

    }


    • Düzenleyen MuratAKSARAY 21 Nisan 2017 Cuma 08:42
    • Yanıt Olarak İşaretleyen CÜNEYT.A 21 Nisan 2017 Cuma 08:56
    21 Nisan 2017 Cuma 08:41

Tüm Yanıtlar

  • Sorgunuzun sonucunu bir DataTable olarak aldığınızı varsayarak;

    kodunuzun 

        e.Graphics.DrawString("TÜRKÇE               15:00          15:20", TabloBasligi, Firca, 70, 160);
        e.Graphics.DrawString("Yer:TOPLANTI ODASI", TabloBasligi, Firca, 70, 200);

    satırları yerine;

    --------------------------------------------------------------------------------------------------------------------

    int yPos = 160;

    string satir;

    foreach (DataRow dRow in dTable.Rows)

    {   

        satir = string.Format("{0}               {1}          {2}", dRow["Ders"], dRow["Baslangic"], dRow["Bitis"]);

        e.Graphics.DrawString(satir, TabloBasligi, Firca, 70, yPos);

        yPos += 40;

        satir = dRow["Yer"].ToString();

        e.Graphics.DrawString(satir, TabloBasligi, Firca, 70, yPos);   

        yPos += 40;

    }


    • Düzenleyen MuratAKSARAY 21 Nisan 2017 Cuma 08:42
    • Yanıt Olarak İşaretleyen CÜNEYT.A 21 Nisan 2017 Cuma 08:56
    21 Nisan 2017 Cuma 08:41
  • Murat bey çok ama çoookkk teşekkür ederim.İyiki sizler varsınız. Sizler sayenizde bir yere gelmeye, ülkemiz için güzel şeyler yapmaya çalışıyoruz. Beni çok mutlu ettiniz.Çok teşekkür ederim.
    21 Nisan 2017 Cuma 08:57