PDA

View Full Version : آموزش: تایپ فارسی در C#



gilas1368
شنبه 22 آبان 1389, 12:36 عصر
براي تايپ فارسي ابتدا فضاي نام زير رو بعد از فضاي نام data به برنامتون اضافه کنين :

Usig System. Runtime.InteropServices;
حالا تابع زير رو براي برنامه تعريف کنين:

public class win32
{
[DllImport("user32.dll", SetLastError = true)]
public static extern int LoadKeyboardLayoutA(string pwszKLID, int flag);
}
اين تابع بايد قبل از تابع زير نوشته بشه :

public insert()
{
(); InitializeComponent
}
حالا فقط کافيه تا کدهاي زير رو داخل زير برنامه کنترل مورد نظر تون يا رويداد load فرمتون وارد کنين تا از اين به بعد هر چيزي داخل فرمتون نوشته ميشه بصورت فارسي باشه

System.PlatformID platform = Environment.OSVersion.Platform;
System.String windowsType = platform.ToString();
win32.LoadKeyboardLayoutA("00000429", 1);
مثلا براي کنترل textBox به اين صورت :

(private void textBoxX1_TextChanged(object sender, EventArgs e
{
System.PlatformID platform = Environment.OSVersion.Platform;
System.String windowsType = platform.ToString();
win32.LoadKeyboardLayoutA("00000429", 1);
}

ایمان مدائنی
شنبه 22 آبان 1389, 12:38 عصر
دوست عزيز كدها رو داخل تگ بزار تا واضح باشه

mohsen_csharp
شنبه 22 آبان 1389, 16:11 عصر
با سلام
آیا این همه کد که شما نوشتید نسبت به این دو خط کد برتری دارد؟

System.Globalization.CultureInfo fa = new System.Globalization.CultureInfo("fa-IR");
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(fa);

codelover
شنبه 22 آبان 1389, 19:41 عصر
چقدر کارو سخت میکنید
این خط هم همین کار رو میکنه :لبخند:


InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(new CultureInfo("fa-IR"));