В настоящее время вы работаете в автономном режиме; ожидается повторное подключение к Интернету

Как управлять многоязыковой компоненты решения в Visual C#

ВНИМАНИЕ! Данная статья переведена с использованием программного обеспечения Майкрософт для машинного перевода и, возможно, отредактирована посредством технологии Community Translation Framework (CTF). Корпорация Майкрософт предлагает вам статьи, обработанные средствами машинного перевода, отредактированные членами сообщества Майкрософт и переведенные профессиональными переводчиками, чтобы вы могли ознакомиться со всеми статьями нашей базы знаний на нескольких языках. Статьи, переведенные с использованием средств машинного перевода и отредактированные сообществом, могут содержать смысловое, синтаксические и (или) грамматические ошибки. Корпорация Майкрософт не несет ответственности за любые неточности, ошибки или ущерб, вызванные неправильным переводом контента или его использованием нашими клиентами. Подробнее об CTF можно узнать по адресу http://support.microsoft.com/gp/machine-translation-corrections/ru.

Эта статья на английском языке: 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 или более поздней версии с "Борей" База данных.
В данной статье предполагается, что вы знакомы с следующие разделы:
  • Наследование реализации
  • Windows Forms
  • ADO.NET
К началу статьи TOP

Управление многоязычных решений компонента

В данной статье описывается, как создать решение, содержащее следующие три проекта:
  • Приложения Windows Visual C#, которое использует методы в Другие два проекта классов.
  • Visual Basic.NET или библиотеки Visual Basic 2005 проект, который обращается к База данных «Борей» и возвращает набор данных.
  • Проект библиотеки классов Visual C#, который содержит метод, принимает ArrayList объекты типа string и возвращает одну строку, является объединенные с помощью экземпляра Класс StringBuilder класс.
Для создания оболочки Windows Forms Visual C# приложения в решение, выполните следующие действия:
  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.

    Теперь у вас есть оболочка Visual Приложение Windows Forms C# в решении с именем HowToMultiComp.
Для создания многоязыковой компоненты решения, добавление визуального C# Библиотеки классов, а затем добавьте Visual Basic.NET или классов Visual Basic 2005 Библиотека.

Сначала необходимо добавить в библиотеку классов Visual Basic. Чтобы добавить Библиотеки классов Visual Basic, выполните следующие действия:
  1. В обозревателе решений щелкните правой кнопкой мышиРешение «howtomulticomp», выберите пункт Добавить, и Нажмите кнопку Новый проект.
  2. Нажмите кнопку Проекты Visual Basic.

    Примечание В Visual Studio 2005 нажмите кнопку Visual Basic.
  3. В группе Шаблоны, нажмите кнопкуБиблиотека классов.
  4. В Имя поле типаNWClassLib, а затем нажмите кнопку ОК.

    В Visual Basic.NET или библиотеки классов Visual Basic 2005 добавлен решение.

    Файл Class1.vb будет открыт в редакторе окно.
  5. Добавить два Импортируемые пространства имен директивы в верхней получить сокращенный доступ классы в следующих пространств имен:
    Imports System.DataImports System.Data.SqlClient
  6. Для создания и заполнения Набор данных с данными из таблицы "Northwind" продукты добавьте следующий метод 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;integrated security=sspi"))	sqlDS.Fill(ds)	return dsEnd Function
Библиотека Visual 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 Forms использующий этот компонент. Создание Visual C# Windows Forms приложения, выполните следующие действия:
  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];
    Этот код устанавливает Источник данных свойства элемента DataGrid для Набор данных который был возвращен GetProducts метод в библиотеке классов.
  10. Для создания Второй Нажмите кнопку обработчик событий, дважды щелкните значок Построить строку.
  11. Следующий код принимает содержимое каждой ячейки в вверх к ячейке 7 первой строки элемента управления DataGrid, а затем добавляет содержимое ArrayList. В ArrayList затем передается SBClassLibrary метод, который возвращает строку, которая отображается в MessageBox функция. Экземпляр класса не является необходимым, поскольку метод был объявлен ранее при помощи ключевого слова static.

    Добавьте следующие строки код для Нажмите кнопку обработчик событий:
    ArrayList arl = new ArrayList();for(int i = 0; i <= 8; i++)	arl.Add(dataGrid1[0, i].ToString());MessageBox.Show(SBClassLib.Class1.BuildString(arl));
К началу статьи 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
К началу статьи 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();		}	}}
К началу статьи 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 Forms Visual C# добавляет одну форму проекта по умолчанию. Эта форма называется Form1. Два файла, которые представляют собой формы, называются Form1.cs и именем Form1.designer.cs. При написании кода в файле Form1.cs. Файл Sesigner.cs, где в конструкторе Windows Forms записывает код, реализующий все действия, выполненные путем добавления элементов управления.Дополнительные сведения о конструкторе Windows Forms в Visual C# 2005 посетите следующий веб-узел корпорации Майкрософт:К началу статьи TOP

Убедитесь, что он работает

  1. Нажмите клавишу F5 для запуска приложения в режиме отладки.
  2. Когда появится форма, нажмите кнопку Получить Продукты.

    В DataGrid Отображает все продукты из продуктов "Борей" Таблица.
  3. Нажмите кнопку Построить строку.

    Появится окно сообщения, сквозь объединенное содержимое ячейки первой строки Ячейка с индексом, 7 (с нуля).
  4. Нажмите SHIFT + F5, чтобы остановить отладку и вернуться в Visual Studio.NET.
К началу статьи TOP

Устранение неполадок

Убедитесь, что не путайте синтаксис при работе Работа с двумя языками. Visual C# очень конкретной и ошибки сообщения не всегда как предлагать или такой интуитивно понятной как сообщения об ошибках в Visual Basic.NET или Viusal Basic 2005. Таким образом может потребоваться сделать закладку «Языковые эквиваленты» раздел.NET Framework средств разработки программного обеспечения для устранения этих неполадок трудности. Найдите следующий раздел справки в MS Справка:
MS:Help: / / MS.VCC/MS.MSDNVS/vsintro7/html/vxgrfLanguageEquivalents.htm
К началу страницы
Ссылки
Для получения дополнительных сведений посетите следующий веб-узла MSDN веб-узел:
Создание решения Mutli проект
http://msdn2.Microsoft.com/en-us/library/aa265251 (VS.60) .aspx
К началу страницы

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 816175 — последний просмотр: 01/17/2015 06:53:24 — редакция: 5.0

Microsoft Visual C# 2005 Express Edition, Microsoft Visual C# .NET 2003 Standard Edition, Microsoft Visual C# .NET 2002 Standard Edition

  • kbnosurvey kbarchive kbhowtomaster kbinterop kbappdev kbhowto kbmt KB816175 KbMtru
Отзывы и предложения