تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] اظهار DataGridView1 من اليمين الى اليسار خلال امر الطباعة
#1
عيد أضحى مبارك 
لكل اخواني في الله المسلمين وكل الاصدقاء والزوار على منتدنا فيجوال بيسك لكل العرب 
--------------------------
لدي استفسار بخصوص أمر الطباعة لجدول DataGridView1 . 
لقد قمت بانشاء كود يتعلق بطباعة محتوى DataGridView1 لكن المشكلة أن الامر يجعل الكود يبدأ من اليسار الى اليمين , وحين اضافة دالة التغيير باستخدام  
كود :
sf.FormatFlags = sf.FormatFlags Or StringFormatFlags.DirectionRightToLeft

قام بتغيير جهة الكتابة في الجدول فقط فمثلا id أجدها على اليسار , وأنا اودها على اليمين أرجوا ان يكون السؤال مفهوما لكم وشكرا 
كود الطباعة  :
كود :
Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
       Dim mRow As Integer = 0
       Dim newpage As Boolean = True
       With DataGridView1
           Dim fmt As StringFormat = New StringFormat(StringFormatFlags.LineLimit)
           Dim sf As New StringFormat

           sf.Alignment = StringAlignment.Center
           sf.LineAlignment = StringAlignment.Center
           sf.FormatFlags = sf.FormatFlags Or StringFormatFlags.DirectionRightToLeft

           sf.LineAlignment = StringAlignment.Center
           sf.Trimming = StringTrimming.EllipsisCharacter
           Dim y As Single = 230
           Do While mRow < .RowCount
               Dim row As DataGridViewRow = .Rows(mRow)
               Dim x As Single = 25
               Dim h As Single = 0
               For Each cell As DataGridViewCell In row.Cells
                   Dim rc As RectangleF = New RectangleF(x, y, cell.Size.Width, cell.Size.Height)
                   Dim rrc As RectangleF = New RectangleF(x, 210, cell.Size.Width, cell.Size.Height)
                   e.Graphics.DrawRectangle(Pens.Black, rc.Left, rc.Top, rc.Width, rc.Height)

                   e.Graphics.DrawString(DataGridView1.Columns(cell.ColumnIndex).HeaderText, .Font, Brushes.Black, rrc, sf)
                   e.Graphics.DrawString(DataGridView1.Rows(cell.RowIndex).Cells(cell.ColumnIndex).FormattedValue.ToString(), .Font, Brushes.Black, rc, sf)
                   '''''------------------CONTENU PAGE **** المحتوى الرسمي للصفحة---------------------
                   'الخطوط
                   Dim Font As New System.Drawing.Font("Sakkal Majalla ", 16, FontStyle.Bold)
                   Dim Font1 As New System.Drawing.Font("Sakkal Majalla ", 12, FontStyle.Bold)
                   e.Graphics.DrawString("قاعدة البيانات لمختلف الشواهد لإدارية المسملة", Font, Brushes.Red, 300, 100)
                   e.Graphics.DrawString(TimeOfDay, Font1, Brushes.Black, 25, 44)
                   e.Graphics.DrawString(DateString, Font1, Brushes.Black, 25, 60)
                   x += rc.Width
                   h = Math.Max(h, rc.Height)
               Next
               newpage = False
               y += h
               mRow += 1
               If y + h > e.MarginBounds.Bottom Then
                   e.HasMorePages = True
                   mRow -= 1
                   newpage = True
                   Exit Sub
               End If
           Loop
           mRow = 0
       End With
   End Sub
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد
تم الشكر بواسطة:
#2
اداة طباعة الداتا جريد
الرد
#3
(11-08-19, 10:11 PM)asemshahen5 كتب : اداة طباعة الداتا جريد

شكراا لك كثير أخي 
أحسستني بغبائي , اتعلم كم من الوقت استغرقت في الكود اعلاه ولازال عليه تطوير كبير 
لكن وجدت في رابطك شيء كنت أبحث عنه .ههههه Heart
جزاك الله ألف شكر
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5
#4
فعلا الكود أعلاه يحتاج تطوير، وهذا تعديل لجزئية بسيطة هكذا
PHP كود :
For Each cell As DataGridViewCell In row.Cells
    Dim w 
e.PageBounds.Width cell.Size.Width
    Dim rc 
As RectangleF = New RectangleF(xycell.Size.Widthcell.Size.Height)
 
   Dim rrc As RectangleF = New RectangleF(x210cell.Size.Widthcell.Size.Height)
 
   e.Graphics.DrawRectangle(Pens.Blackrc.Leftrc.Toprc.Widthrc.Height
الرد
تم الشكر بواسطة: ابراهيم ايبو , الرائد , asemshahen5
#5
اهلا اخي الرائد 
ليس كما تقول عن نفسك فلو لم تكن ذكيا لما طرقت باب البرمجة
كلنا لدينا نقصا في العلم ولم بولد احد منا وهارد ديسك دماغه مليئة
كلنا نقوم يوميا بإملائه بما نتعلمه العلم بحر لايعلم حدوده الا الله
وفوق كل ذي علم عليم
تعلم واطلب العلم فهذه عبادة
اضحى مبارك
الرد
#6
أؤيد ما ذكره العم ابراهيم،
فلا داعي للوصف السلبي الذي قد ينعكس على العقل الباطن (كما قرأته في مقال طبي على ما أعتقد).
وكل عام وأنتم بخير واضحى مبارك.
الرد
#7
(12-08-19, 12:39 AM)ابراهيم ايبو كتب :
اهلا اخي الرائد 
ليس كما تقول عن نفسك فلو لم تكن ذكيا لما طرقت باب البرمجة
كلنا لدينا نقصا في العلم ولم بولد احد منا وهارد ديسك دماغه مليئة
كلنا نقوم يوميا بإملائه بما نتعلمه العلم بحر لايعلم حدوده الا الله
وفوق كل ذي علم عليم
تعلم واطلب العلم فهذه عبادة
اضحى مبارك

اعلم ذلك . أيها العم المحترم
ولا انتقص من اسلوبي أو نفسي , بذلك الكلام , بل أعتبره محض تحفيزي نفسي فقط
وشكرا على مساعدتكم

(11-08-19, 10:11 PM)asemshahen5 كتب : اداة طباعة الداتا جريد

أود التعديل على ملف التعريفrefferenc كيف يمكنني ذلك
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد
تم الشكر بواسطة: asemshahen5 , ابراهيم ايبو
#8
تفضل هذا السورس كود .

لكن بعد التعديل عليه ضع مثال مع التعديل مع السورس كود في قسم امثلة و مشاريع ليستفيد منه الاعضاء شاكرا لك مقدما .


الملفات المرفقة
.rar   PrintDataGridViewSource.rar (الحجم : 23.97 ك ب / التحميلات : 28)
الرد
#9
(12-08-19, 11:39 AM)asemshahen5 كتب : تفضل هذا السورس كود .

لكن بعد التعديل عليه ضع مثال مع التعديل مع السورس كود في قسم امثلة و مشاريع ليستفيد منه الاعضاء شاكرا لك مقدما .
شكرا لك لكنه يعطيني رسالة خطأ اثناء debug
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد
تم الشكر بواسطة:
#10
السورس كود بتاع الاداة مفهوش اي مشكلة جربته .

و هذا مثال على استخدام السورس كود بتاع الاداة مع مشروع على استخدامها على قاعدة بيانات مرفوعة على الانترنيت تستطيع تجربته مباشرة دون الحاجة الى تغيير اعدادات الاتصال .

   

   


الملفات المرفقة
.zip   PrintDataGridView.zip (الحجم : 254.17 ك ب / التحميلات : 35)
الرد
تم الشكر بواسطة: عبد العزيز البسكري


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيفية الحذف من Treeview من خلال chekbox al9atl 12 313 21-01-20, 02:06 AM
آخر رد: al9atl
Wink [VB.NET] اظهار معطيات جدول اطراف القضية مرتبط بجدول القضايا tahaayyoub 4 141 11-01-20, 03:42 AM
آخر رد: طه أيوب
  ماهي طريقة الطباعة مباشرة من الكريستال ريبورت بدون فتحه جيولوجي مبتدئ 2 118 10-01-20, 01:47 AM
آخر رد: جيولوجي مبتدئ
  الطباعة من الداتا جريد muad 14 586 09-01-20, 04:43 PM
آخر رد: asemshahen5
  كود اظهار اسم الصنف عند الخروج او مفتاح التاب علي كعبي 6 134 02-01-20, 11:43 PM
آخر رد: علي كعبي
  اظهار رقم الوارد بعد عملية الحفظ علي كعبي 2 91 26-12-19, 12:31 AM
آخر رد: علي كعبي
  مساعدة في عرض اداه مخصصه من اليمين الى اليسار. Rabeea Qbaha 4 214 16-12-19, 04:06 AM
آخر رد: Rabeea Qbaha
  استعلام عن راتب موظف خلال شهر محدد بسام محمدغانم 0 98 12-12-19, 07:19 PM
آخر رد: بسام محمدغانم
  مشكلة الطباعة في الكريستال ريبورت i1982 7 296 03-12-19, 10:47 PM
آخر رد: i1982
  [VB.NET] مشكل في اظهار قيمة trakktour 4 193 29-11-19, 09:16 PM
آخر رد: trakktour

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم