PDA

View Full Version : فارسی شدن زبان در برنامه



M.YasPro
دوشنبه 14 دی 1388, 10:54 صبح
سلام
چی جوری می تونم وقتی کاربر وارد برنامم میشه زبان برنامم فارسی بشه ( یعنی تکست باکس ها فارسی و rtl بشه ) بدون اینکه به زبان ویندوز کاری داشته باشه یا کلید های Alt+shift رو بزنه ؟
ممنون از توجهتون

far9090
دوشنبه 14 دی 1388, 13:04 عصر
سلام . از این کد می تونی استفاده کنی .

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

neda_dela
دوشنبه 14 دی 1388, 22:18 عصر
سلام
چی جوری می تونم وقتی کاربر وارد برنامم میشه زبان برنامم فارسی بشه ( یعنی تکست باکس ها فارسی و rtl بشه ) بدون اینکه به زبان ویندوز کاری داشته باشه یا کلید های Alt+shift رو بزنه ؟
ممنون از توجهتون
شما باید اول یه کلاس بسازی مثلا به نام clslng
بعد این کد ها رو توش بذار :
من به صورت کامل برات میذارم:


using System;

using System.Runtime.InteropServices;

using System.Collections.Generic;

using System.Windows.Forms;

using System.Data.SqlClient;

using System.Data;

/// <summary>
/// Summary description for Class1

/// </summary>

public class ClsLang

{
public ClsLang()
{ }
public class win32

{
[DllImport("user32.dll", SetLastError = true)]
public static extern int LoadKeyboardLayoutA(string pwszKLID, int Flags);
}
public void farsi()
{
System.PlatformID platform = Environment.OSVersion.Platform;
string windowstype = platform.ToString();
if (windowstype == "Win32NT")
{
win32.LoadKeyboardLayoutA("00000429", 1);
}
if (windowstype == "Win32Windows" || windowstype == "Win32S")
{
win32.LoadKeyboardLayoutA("00000401", 1);
}
}
//--------------------------------

public void english()
{
win32.LoadKeyboardLayoutA("00000409", 1);
}
}

حالا توی فرمی که میخای هنگام ورود زبانش فارسی یا انگلیسی بشه این طوری ازش استفاده کن:(مثلا توی ریداد لود فرمت)


ClsLang lng = new ClsLang();
lng.farsi();

یا مثلا می تونی دو تا رادیو باتن بذاری یکی به نام فارسی یکی دیگه به نام انگلیسی بعد
توی رویداد checked اونا از این کلاس اتفاده کنی
موفق باشی
التماس دعا

far9090
سه شنبه 15 دی 1388, 09:45 صبح
فکر نکنم نیازی به این همه کار باشه . با اون یه خطی هم که گفتم میشه تمام این کار ها رو کرد . به هر ممنون .