كيفية إدارة حل مكون تعدد اللغات في "Visual C" #

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

816175
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
الموجز
توضح هذه المقالة كيفية إدارة حل مكون تعدد اللغات باستخدام Visual C# .NET أو Visual C# 2005.
معلومات أخرى

متطلبات

توضح القائمة التالية الأجهزة الموصى بها برامج البنية الأساسية للشبكة و حزم الخدمات المطلوبة:
  • أحد أنظمة التشغيل التالية:
    • Microsoft Windows 2000 Professional (أو ملقم)
    • Microsoft Windows XP Professional مع برنامج .NET Framework مثبتًا
    • Microsoft Windows Server 2003
  • Microsoft Visual Studio .NET أو Microsoft Visual Studio 2005.
  • Microsoft SQL Server الإصدار 7.0 أو الأحدث مع Northwind قاعدة البيانات.
تفترض هذه المقالة كنت معتاداً على المواضيع التالية:
  • توريث التنفيذ
  • نماذج Windows
  • ado.net
Back to the top

إدارة حلول مكون تعدد اللغات

توضح هذه المقالة كيفية إنشاء حل يحتوي على المشاريع الثلاثة التالية:
  • تطبيق Visual C# Windows يستخدم أساليب في الفئات جهازي المشروع الأخرى.
  • مشروع Visual Basic .NET أو مكتبة 2005 Visual Basic الذي يصل إلى قاعدة البيانات NorthWind وإرجاع DataSet.
  • مشروع مكتبة Visual C# لـ الفئات يحتوي على أسلوب التي تأخذ ArrayList كائنات سلسلة وتقوم بإرجاع سلسلة واحدة سلسلةً باستخدام مثيل فئة بـ StringBuilder.
لإنشاء shell نماذج Windows C# Visual التطبيق في أحد حلول اتبع الخطوات التالية:
  1. انقر فوق ابدأ ، وأشر إلى البرامج ثم قم بالإشارة إلى Microsoft Visual Studio .NET (لـ Visual Studio .NET 2002) أو Microsoft Visual Studio .NET 2003 (لـ Microsoft Visual Studio .NET 2003) أو Microsoft Visual Studio 2005 (لـ Microsoft Visual Studio 2005).
  2. انقر فوق برنامج Microsoft Visual Studio .NET أو Microsoft Visual Studio 2005.
  3. انقر فوق مشروع جديد ثم انقر فوق Visual C# المشاريع

    ملاحظة في Visual Studio 2005 ، انقر فوق Visual C#.
  4. ضمن قوالب ، انقر فوق تطبيق Windows.
  5. في الحقل اسم اكتب HowToMultiComp ومن ثم انقر فوق موافق.
  6. عند إنشاء المشروع تأكد من رؤية "مستكشف الحلول". في حالة عدم ظهور "مستكشف الحلول" اضغط CTRL + ALT + L.

    لديك الآن shell التطبيق "نماذج" Visual C# لـ Windows في أحد حلول المسمى HowToMultiComp.
لإنشاء حل مكون تعدد اللغات إضافة Visual C# "فئة مكتبة" ثم قم بإضافة Visual Basic .NET أو مكتبة الفئات 2005 Visual Basic.

يجب إضافة مكتبة الفئات Visual Basic أولاً. لإضافة "مكتبة الفئات Visual Basic" ، اتبع الخطوات التالية:
  1. في "مستكشف الحلول" انقر بزر الماوس الأيمن فوق حل 'HowToMultiComp' ، أشر إلى إضافة ، ثم انقر فوق مشروع جديد.
  2. انقر فوق مشاريع Visual Basic.

    ملاحظة في Visual Studio 2005 ، انقر فوق Visual Basic.
  3. ضمن قوالب ، انقر فوق مكتبة الفئات.
  4. في المربع الاسم، اكتب NWClassLib ومن ثم انقر فوق موافق.

    يتم إضافة Visual Basic .NET أو مكتبة الفئات 2005 Visual Basic إلى الحل.

    يتم الآن فتح في محرر Class1.vb الإطار.
  5. إضافة توجيهات عمليات الاستيراد جهازي الأعلى اختصار نقطة تدوين الوصول إلى الفئات في مساحات الأسماء التالية:
    Imports System.DataImports System.Data.SqlClient
  6. إنشاء وتعبئة DataSet مع البيانات من جدول منتجات Northwind أضف الأسلوب التالي إلى Class1 (قد يكون لدى ضبط سلسلة الاتصال للكمبيوتر الخاص بك): ds
    Public Shared Function GetProducts() As DataSet	Dim ds As New DataSet()	Dim sqlDS As New SqlDataAdapter("select * from products", New SqlConnection("server=<network address of instance of SQL Server>;database=northwind;integrated security=sspi"))	sqlDS.Fill(ds)	return dsEnd Function
إنشاء مكتبة C# الفئات مرئية. للقيام بذلك، اتبع الخطوات التالية:
  1. في "مستكشف الحلول" انقر بزر الماوس الأيمن فوق حل 'HowToMultiComp' ، أشر إلى إضافة ، ثم انقر فوق مشروع جديد.
  2. انقر فوق Visual C# المشاريع.

    ملاحظة في Visual Studio 2005 ، انقر فوق Visual C#.
  3. ضمن قوالب ، انقر فوق مكتبة الفئات.
  4. في المربع الاسم، اكتب SBClassLib ومن ثم انقر فوق موافق.

    يتم إضافة Visual C# "فئة مكتبة" إلى الحل.

    Class1.cs مفتوح الآن في إطار محرر.
  5. إضافة توجيهات باستخدام التالية في أعلى نموذج التعليمات البرمجية Class1.cs اختصار نقطة تدوين الوصول إلى الفئات في مساحة الاسم System.Text ومساحة System.Collections:
    using System.Text;using System.Collections;
  6. قم بإضافة التعليمات البرمجية التالية في الفئة العامة Class1 ، والذي يستخدم مثيل فئة بـ StringBuilder لسَلسَلة سلسلة واحدة الموجودة في ArrayList:
    public static String BuildString(ArrayList arlStrings){	StringBuilder sb = new StringBuilder();		foreach(String s in arlStrings)	{			sb.Append(s);			sb.Append(", ");	}	return sb.ToString();}
يمكنك الآن إنشاء التطبيق نماذج Visual C# لـ Windows الذي يستهلك هذا المكون. نماذج التطبيق لإنشاء لـ Visual C# Windows ، اتبع الخطوات التالية:
  1. لإضافة مراجع مكونين "مكتبة الفئات" اتبع الخطوات التالية:
    1. في "مستكشف الحلول" انقر بزر الماوس الأيمن فوق مراجع ضمن HowToMultiComp ومن ثم انقر فوق إضافة مرجع.
    2. ضمن المشاريع اضغط و المفتاح CTRL مع انقر فوق NWClassLib ثم انقر فوق SBClassLib.
    3. مع كلا المشروعين تحديد انقر فوق تحديد.
    4. عند ظهور كلا من المشاريع في المحددة مكونات ، انقر فوق موافق.

      يتم الآن إدراج المشاريع ضمن مراجع لتطبيق إطار.
  2. Form1.cs مفتوح في طريقة العرض "تصميم". إذا كان Form1.cs في فتح ، انقر نقراً مزدوجاً فوق Form1.cs في "مستكشف الحلول" بالفعل.
  3. اضغط CTRL + ALT + X لفتح مربع الأدوات ثم انقر فوق نماذج Windows.
  4. اسحب أحد أزرار إلى النموذج ثم اضغط F4 للوصول إلى صفحة خاصية زر.
  5. تغيير إعداد الخاصية النص إلى إظهار المنتجات.
  6. إضافة زر آخر ثم قم بتغيير نص الخاصية إنشاء سلسلة.
  7. قم بسحب عنصر تحكم DataGrid إلى النموذج ثم قم بإفلاته أسفل الأزرار. تغيير حجم عنصر التحكم DataGrid بحيث تملأ منطقة المتبقية في النموذج.
  8. انقر نقراً مزدوجاً فوق إظهار المنتجات. Visual Studio .NET تلقائياً بإنشاء معالج حدث انقر.
  9. قم بإضافة التعليمات البرمجية التالية معالج الأحداث انقر:
    dataGrid1.DataSource = NWClassLib.Class1.GetProducts().Tables[0];
    التعليمات البرمجية هذا تعيين الخاصية DataSourceDataGrid إلى DataSet التي تم إرجاعها بواسطة الأسلوب GetProducts "مكتبة الفئات".
  10. إنشاء معالج حدث انقر ثاني ، انقر نقراً مزدوجاً فوق إنشاء سلسلة.
  11. التعليمة البرمجية التالية بأخذ محتويات كل خلية في الصف الأول DataGrid إلى الخلية 7 ثم يقوم بإضافة محتوى إلى ArrayList. ثم يتم تمرير ArrayList إلى الأسلوب SBClassLibrary بإرجاع سلسلة يظهر في دالة MessageBox. مثيل الفئة ليس ضرورياً، لأنه تم تعريف الأسلوب مسبقًا باستخدام الكلمة الأساسية ثابتة.

    إضافة التعليمات البرمجية التالية إلى معالج الأحداث نقر: arl
    ArrayList arl = new ArrayList();for(int i = 0; i <= 8; i++)	arl.Add(dataGrid1[0, i].ToString());MessageBox.Show(SBClassLib.Class1.BuildString(arl));
Back to the top

إتمام سرد التعليمات البرمجية

إكمال رمز قائمة (Class1.vb)

Imports System.DataImports System.Data.SqlClientPublic Class Class1    Public Shared Function GetProducts() As DataSet        Dim ds As New DataSet()        Dim sqlDS As New SqlDataAdapter("select * from products", New SqlConnection("server=<network address of instance of SQL Server>;database=northwind;uid=sa"))        sqlDS.Fill(ds)        Return ds    End FunctionEnd Class
Back to the top

إكمال رمز قائمة (Class1.cs)

using System;using System.Text;using System.Collections;namespace SBClassLib{	public class Class1	{		public Class1()		{					}		public static String BuildString(ArrayList arlStrings)		{			StringBuilder sb = new StringBuilder();			foreach(String s in arlStrings)			{				sb.Append(s);				sb.Append(", ");			}			return sb.ToString();		}	}}
Back to the top

إكمال رمز قائمة (Form1.cs)

using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;namespace HowToMultiComp{		public class Form1 : System.Windows.Forms.Form	{		private System.Windows.Forms.Button button1;		private System.Windows.Forms.Button button2;		private System.Windows.Forms.DataGrid dataGrid1;				private System.ComponentModel.Container components = null;		public Form1()		{			InitializeComponent();		}		protected override void Dispose( bool disposing )		{			if( disposing )			{				if (components != null) 				{					components.Dispose();				}			}			base.Dispose( disposing );		}		private void InitializeComponent()		{			this.button1 = new System.Windows.Forms.Button();			this.button2 = new System.Windows.Forms.Button();			this.dataGrid1 = new System.Windows.Forms.DataGrid();			((System.ComponentModel.ISupportInitialize)(this.dataGrid1)).BeginInit();			this.SuspendLayout();			// 			// button1			// 			this.button1.Name = "button1";			this.button1.Size = new System.Drawing.Size(104, 23);			this.button1.TabIndex = 0;			this.button1.Text = "Show Products";			this.button1.Click += new System.EventHandler(this.button1_Click);			// 			// button2			// 			this.button2.Location = new System.Drawing.Point(136, 0);			this.button2.Name = "button2";			this.button2.Size = new System.Drawing.Size(96, 23);			this.button2.TabIndex = 1;			this.button2.Text = "Build String";			this.button2.Click += new System.EventHandler(this.button2_Click);			// 			// dataGrid1			// 			this.dataGrid1.DataMember = "";			this.dataGrid1.HeaderForeColor = System.Drawing.SystemColors.ControlText;			this.dataGrid1.Location = new System.Drawing.Point(0, 24);			this.dataGrid1.Name = "dataGrid1";			this.dataGrid1.Size = new System.Drawing.Size(296, 256);			this.dataGrid1.TabIndex = 2;			// 			// Form1			// 			this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);			this.ClientSize = new System.Drawing.Size(292, 273);			this.Controls.AddRange(new System.Windows.Forms.Control[] {																		  this.dataGrid1,																		  this.button2,																		  this.button1});			this.Name = "Form1";			this.Text = "Form1";			((System.ComponentModel.ISupportInitialize)(this.dataGrid1)).EndInit();			this.ResumeLayout(false);		}		[STAThread]		static void Main() 		{			Application.Run(new Form1());		}		private void button1_Click(object sender, System.EventArgs e)		{			dataGrid1.DataSource = NWClassLib.Class1.GetProducts().Tables[0];		}		private void button2_Click(object sender, System.EventArgs e)		{			ArrayList arl = new ArrayList();			for(int i = 0; i <= 8; i++)				arl.Add(dataGrid1[0, i].ToString());			MessageBox.Show(SBClassLib.Class1.BuildString(arl));		}	}}
ملاحظة يجب أن يتم تغيير التعليمات البرمجية في Visual Studio 2005. عند إنشاء مشروع Windows نماذج Visual C# إضافة نموذج إلى المشروع بشكل افتراضي. يدعى هذا النموذج Form1. تسمى الملفين التي تمثل النموذج Form1.cs Form1.designer.cs. كتابة التعليمات البرمجية في Form1.cs. يعد الملف Sesigner.cs حيث يكتب & مصمم نماذج Windows التعليمات البرمجية التي تقوم بتنفيذ كافة الإجراءات تنفيذ عن طريق إضافة عناصر تحكم. للحصول على مزيد من المعلومات حول مصمم نماذج Windows في Visual C# 2005 قم بزيارة موقع Microsoft التالي على الويب:Back to the top

تحقق من التي من عمل

  1. اضغط F5 لتشغيل التطبيق في وضع التصحيح.
  2. عند ظهور "النموذج" ، انقر فوق إحضار المنتجات.

    تعرض DataGrid كافة المنتجات من جدول منتجات Northwind.
  3. انقر فوق إنشاء سلسلة.

    يظهر مربع رسالة الذي يظهر ومتسلسلة محتويات خلايا الصف الأول من خلال الخلية التي تحتوي على فهرس 7 (يستند).
  4. اضغط SHIFT + F5 إيقاف تصحيح والعودة إلى Visual Studio .NET.
Back to the top

استكشاف الأخطاء وإصلاحها

تأكد من أن لا تخلط بين بناء الجملة عند العمل مع لغتين. Visual C# معينة جداً ويتم رسائل الخطأ لا تكون دائماً المطالبة كما أو وبديهية كما أنها رسائل خطأ في Visual Basic .NET أو في Viusal Basic 2005. ولذلك، قد تحتاج إلى الإشارة المرجعية "معادلاتها اللغة" مقطع من مجموعة أدوات تطوير برامج .NET Framework لاستكشاف أخطاء هذه المشكلات. حدد موضوع التعليمات التالية في تعليمات MS:
ms:help://MS.VCC/MS.MSDNVS/vsintro7/html/vxgrfLanguageEquivalents.htm
Back to the top
مراجع
لمزيد من المعلومات، قم بزيارة موقع MSDN التالي على الويب:Back to the top

تحذير: تمت ترجمة هذا المقال تلقائياً

خصائص

رقم الموضوع: 816175 - آخر مراجعة: 01/17/2015 06:53:14 - المراجعة: 2.5

  • Microsoft Visual C# 2005 Express Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
  • kbnosurvey kbarchive kbmt kbhowtomaster kbinterop kbappdev kbhowto KB816175 KbMtar
تعليقات