تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تحويل مشروع تكبير الفورم من vb الى #c
#1
السلام عليكم ورحمة الله وبركاته 


يعطيكم العافية لو تكرمتو احتاج تعديل هذا المثال الى #C من VB


هو عبارة عن كلاس واكواد لتكبير الفورم 



لكم مني جزيل الشكر


الملفات المرفقة
.rar   تكبير الفورم.rar (الحجم : 77.12 ك ب / التحميلات : 4)



بكم نرتقي ونسأل الله لنا ولكم التوفيق ،،
الرد
تم الشكر بواسطة:
#2
(24-06-19, 11:02 PM)hglogtd كتب : السلام عليكم ورحمة الله وبركاته 


يعطيكم العافية لو تكرمتو احتاج تعديل هذا المثال الى #C من VB


هو عبارة عن كلاس واكواد لتكبير الفورم 



لكم مني جزيل الشكر

(لست مبرمج #C)

تم تحويل الكود بالاستعانة بموقع Code Converter C# to VB and VB to C# – Telerik

كود :
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Security;
using System.Text;
using System.Threading.Tasks;
using Microsoft.VisualBasic;

public class ResizeControls
{
   private Hashtable RatioTable = new Hashtable();

   private float WindowHeight;
   private float WindowWidth;
   private float HeightRatio;
   private float WidthRatio;

   private Control _Container = new Control();

   private static long m_FormWidth;                          // Original form width.
   private static long m_FormHeight;

   public Control Container
   {
       get
       {
           return _Container;
       }
       set
       {
           _Container = Ctrl;
           FullRatioTable();
       }
   }

   private struct SizeRatio
   {
       public float TopRatio;
       public float LeftRatio;
       public float HeightRatio;
       public float WidthRatio;
   }

   private void FullRatioTable()
   {
       WindowHeight = _Container.Height;
       WindowWidth = _Container.Width;
       RatioTable = new Hashtable();
       AddChildrenToTable(ref _Container);
   }

   private void AddChildrenToTable(ref Control ChildContainer)
   {
       SizeRatio R = new SizeRatio();

       foreach (Control C in ChildContainer.Controls)
       {
           {
               var withBlock = C;
               R.TopRatio = System.Convert.ToSingle(withBlock.Top / (double)WindowHeight);
               R.LeftRatio = System.Convert.ToSingle(withBlock.Left / (double)WindowWidth);
               R.HeightRatio = System.Convert.ToSingle(withBlock.Height / (double)WindowHeight);
               R.WidthRatio = System.Convert.ToSingle(withBlock.Width / (double)WindowWidth);
               RatioTable(withBlock.Name) = R;
               if (withBlock.HasChildren)
                   AddChildrenToTable(ref C);
           }
       }
   }

   public void ResizeControls()
   {
       HeightRatio = System.Convert.ToSingle(_Container.Height / (double)WindowHeight);
       WidthRatio = System.Convert.ToSingle(_Container.Width / (double)WindowWidth);

       WindowHeight = _Container.Height;
       WindowWidth = _Container.Width;

       ResizeChildren(ref _Container);
   }

   private void ResizeChildren(ref Control ChildContainer)
   {
       SizeRatio R = new SizeRatio();
       foreach (Control C in ChildContainer.Controls)
       {
           {
               var withBlock = C;
               R = (SizeRatio)RatioTable(withBlock.Name);
               withBlock.Top = System.Convert.ToInt32(WindowHeight * R.TopRatio);
               withBlock.Left = System.Convert.ToInt32(WindowWidth * R.LeftRatio);
               withBlock.Height = System.Convert.ToInt32(WindowHeight * R.HeightRatio);
               withBlock.Width = System.Convert.ToInt32(WindowWidth * R.WidthRatio);

               if (withBlock.HasChildren)
                   ResizeChildren(ref C);
           }


           switch (true)
           {
               case object _ when C is ListBox:
                   {
                       ListBox L = new ListBox();
                       L = (ListBox)C;
                       L.IntegralHeight = false;
                       break;
                   }
           }

           ResizeControlFont(ref C, WidthRatio, HeightRatio);
       }
   }

   public static void SubResize(Form F, float percentW, float percentH)
   {
       long FormHeight;
       long FormWidth;
       float HeightChange;
       float WidthChange;


       FormHeight = Int((Screen.PrimaryScreen.WorkingArea.Height) * (percentH / (double)100));
       FormWidth = Int((Screen.PrimaryScreen.WorkingArea.Width) * (percentW / (double)100));

       {
           var withBlock = F;
           withBlock.Height = FormHeight;
           withBlock.Width = FormWidth;

           HeightChange = withBlock.ClientSize.Height / (double)m_FormHeight;
           WidthChange = withBlock.ClientSize.Width / (double)m_FormWidth;
       }
   }



   private void ResizeControlFont(ref Control Ctrl, float RatioW, float RatioH)
   {
       float FSize = Ctrl.Font.Size;
       FontStyle FStyle = Ctrl.Font.Style;
       string FNome = Ctrl.Font.Name;
       float NewSize = FSize;

       NewSize = System.Convert.ToSingle(FSize * Math.Sqrt(RatioW * RatioH));
       Font NFont = new Font(FNome, System.Convert.ToSingle(NewSize), FStyle);
       Ctrl.Font = NFont;
   }
}
الرد
تم الشكر بواسطة: hglogtd , asemshahen5
#3
الله يعطيك العافيه



بكم نرتقي ونسأل الله لنا ولكم التوفيق ،،
الرد
تم الشكر بواسطة: wared
#4
عملت له تحويل مثل ما عملت انت لكن اعطاني اخطاء كثيرة



بكم نرتقي ونسأل الله لنا ولكم التوفيق ،،
الرد
تم الشكر بواسطة: wared
#5
(25-06-19, 03:17 AM)hglogtd كتب : عملت له تحويل مثل ما عملت انت لكن اعطاني اخطاء كثيرة

(لست مبرمج #C)

يمكنك تحويل كلاس VB.NET هذا إلى مكتبة DLL عن طريق مشروع Class Library في VB.NET،
ومن ثم إدراجه واستدعائه في مشروع #C
الرد
تم الشكر بواسطة: Rabeea Qbaha , hglogtd


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [مشروع] convert coad to telerik اريد تحويل كود جمع وقت داخل الدتا جريد الى جريد من نوع تيلرك safnnn 1 93 12-10-19, 04:43 PM
آخر رد: elgokr
  أريد تحويل كود من vb.net الئ C# adel50 6 210 05-10-19, 12:44 PM
آخر رد: adel50
  طريقة لعرض المنتجات المفضلة في قائمة على الفورم الرئيسي tfarejdz 1 91 15-09-19, 11:53 PM
آخر رد: asemshahen5
  تحويل كود anes 6 160 15-09-19, 10:03 PM
آخر رد: anes
Exclamation [C#.NET] مساعده في تحويل كود من vb.net الى c# Ebrahim5556 4 131 13-09-19, 03:50 AM
آخر رد: ابراهيم ايبو
  [تم الحل] مشكلة فى تحويل مشروع تفقيط من vb.net الى #C maxruined 13 636 26-08-19, 07:14 PM
آخر رد: maxruined
  مشروع استخراج بيانات الرقم القومى amonem 29 937 27-07-19, 02:33 AM
آخر رد: amonem
  تحويل كود حفظ الى كلاس عام amonem 0 138 13-07-19, 10:56 PM
آخر رد: amonem
  [C#.NET] مشروع تخرج متابعة موظفين وطلاب Noooor 1 193 21-06-19, 04:54 PM
آخر رد: asemshahen5
  تحويل عدد ساعات العمل من عشري (٢٫٧٥) الى - "HH:MM" في التقارير - تم الحل Rabeea Qbaha 7 368 16-06-19, 01:48 PM
آخر رد: elgokr

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


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