PDA

View Full Version : سوال: تعیین زبان پیشفرض برای form در windows ap



rezabaghaie
دوشنبه 23 بهمن 1391, 21:48 عصر
سلام

چجوری میشه کاری کرد که وقتی برنامه دیباگ میشه و یا درکل وقتی یک فرم باز میشه زبان کیبورد به صورت خودکار به فارسی تغییر کنه؟

----
یه تاپیک هم درمورد مشکل ی و ک هست که میگه چون یکی عربی و یکی فارسی.....

با کاراکتر "ک" مشکلی ندارم!!!!

میخواستم بدونم وقتی مثلا من "بقایی" رو ذخیره میکنم کاراکتر "ی" با کدوم کدینگ ذخیره میشه! چون وقتی کلماتی که دارای "ی" هستند رو جست و جو میکنم خروجی ندارم!!!

اونم در حالتی که من با همون کیبورد کلمه "ی" یا "ک" رو وارد کردم (منظورم زبان)!

میشه واسه رفع این مشکل یه زبان پیش فرض برای فرم تعریف کنیم؟
اگه میشه چجوری؟

mm26363@yahoo.co.uk
دوشنبه 23 بهمن 1391, 22:23 عصر
System.Globalization.CultureInfo inp = new System.Globalization.CultureInfo("fa-ir");
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(inp);رادر اونت ورودیهات قرار بده

mm26363@yahoo.co.uk
دوشنبه 23 بهمن 1391, 22:24 عصر
System.Globalization.CultureInfo language = new System.Globalization.CultureInfo("fa-ir");
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(language);

rezabaghaie
دوشنبه 23 بهمن 1391, 22:57 عصر
ممنون. اون کدها رو کجا بنویسم دقیقا؟

من دیتا بیس رو از طریق خود ویژوال استودیو ساختم! Collation کجاش میشه دقیقا؟

FreeMagic
سه شنبه 24 بهمن 1391, 08:04 صبح
در ضمن برای سلکت داده های فارسی (یونیکد) در شرط قبل از مقداری که در مقایسه شرکت میکنه یک N قرار بدید:
Select * from tbl where name = N'بقایی'

قبل از بعضی پارامترها یا دستورات از حرف N استفاده میکنن و قبل از بعضی های دیگه از علامت @
میشه بگید این دو چی هستن؟
برای اولی که خودتون مثال رو گفتین و برای دومی مثلا:
query=@"select * from table";

Mahmoud.Afrad
سه شنبه 24 بهمن 1391, 18:49 عصر
اون N توی sqlserver معنی دار هست ، اون @ توی سی شارپ کاربرد داره ربطی به هم ندارند. توی این مثالی که زدی نیازی به @ نیست. در رشته هایی که از کاراکترهای کنترلی مثل \ استفاده شده باشه یا باید این کاراکتر رو دوبار تکرار کنید یا یک @ پشت رشته بزازید. مثال
string path = "C:\\";
یا
string path = @"C:\";

rezabaghaie
سه شنبه 24 بهمن 1391, 21:26 عصر
بe'
[/SQL]
OriginalDatabasePath آدرس دیتابیس پروژه هست(دیتابیس پروژه نه دیتابیسی که در پوشه دیباگ هستش)

در ضمن برای سلکت داده های فارسی (یونیکد) در شرط قبل از مقداری که در مقایسه شرکت میکنه یک N قرار بدید:
Select * from tbl where name = N'بقایی'

من دیتا بیس رو از طریق خود ویژوال استودیو ساختم! آدرس دیتا بیس از کجا بردارم؟؟

وقتی با اون دستورات بالا زبان پیشفرض رو تغییر میدم ، بازم لازمه تا از اون دستور برای سرچ استفاده کنم؟

docendo
سه شنبه 24 بهمن 1391, 21:36 عصر
سلام

چجوری میشه کاری کرد که وقتی برنامه دیباگ میشه و یا درکل وقتی یک فرم باز میشه زبان کیبورد به صورت خودکار به فارسی تغییر کنه؟

----
یه تاپیک هم درمورد مشکل ی و ک هست که میگه چون یکی عربی و یکی فارسی.....

با کاراکتر "ک" مشکلی ندارم!!!!

میخواستم بدونم وقتی مثلا من "بقایی" رو ذخیره میکنم کاراکتر "ی" با کدوم کدینگ ذخیره میشه! چون وقتی کلماتی که دارای "ی" هستند رو جست و جو میکنم خروجی ندارم!!!

اونم در حالتی که من با همون کیبورد کلمه "ی" یا "ک" رو وارد کردم (منظورم زبان)!

میشه واسه رفع این مشکل یه زبان پیش فرض برای فرم تعریف کنیم؟
اگه میشه چجوری؟

سوال شما به دیتا بیس مربوط نیست که بعضی از دوستان پاسخ نوشته اند

این کد پیش فرض فارسی است

using System.Globalization;
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(newCultureInfo("fa-IR"));




بد نبود قبلا در سایت جستجو میکردید

این لینک مشکل شما را برطرف میکند و دو سه تا هم مثال دارد (http://barnamenevis.org/showthread.php?170125-%DA%A9%D8%AF-%D8%A7%D8%B3%DA%A9%DB%8C-%D8%AD%D8%B1%D9%88%D9%81-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C&highlight=%D8%B2%D8%A8%D8%A7%D9%86+%D9%81%D8%A7%D8 %B1%D8%B3%DB%8C)

daneshjo90
سه شنبه 24 بهمن 1391, 22:03 عصر
همه دوستان نظر دادن گفتیم ماهم یه نظر بدیم

از قطعه کد زیر استفاده کن

private void Form2_Load(object sender, EventArgs e)
{
System.Globalization.CultureInfo inp = new System.Globalization.CultureInfo("fa-ir");
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(inp);
}






موفق باشی

rezabaghaie
جمعه 04 اسفند 1391, 17:38 عصر
من از اون کدهای sql استفاده کردم ولی این ارور میده
ALTER DATABASE failed. The default collation of database 'taxi' cannot be set to Persian_100_CI_AI.
___________________--
درمورد نوشتن اون کدها هم یه توضیح بدین که منظور از nickname چیه؟ من دیتا بیس رو از خود ویژوال ساختم ! آدرس دیتا بیس چی میشه دقیقا؟

rezabaghaie
جمعه 04 اسفند 1391, 17:40 عصر
همه دوستان نظر دادن گفتیم ماهم یه نظر بدیم

از قطعه کد زیر استفاده کن

private void Form2_Load(object sender, EventArgs e)
{
System.Globalization.CultureInfo inp = new System.Globalization.CultureInfo("fa-ir");
InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(inp);
}






موفق باشی

طبق کد هایی که دوستان دادن کیبورد پیشفرض رو به فارسی تغییر دادم - اگه بیام کیبورد رو پیشفرض عربی کنم مشکل "ی" در جستو جو حل میشه؟

چجوری با همین کدها عربی کنم کیبورد رو؟ شاید مشکل حل بشه!

rezabaghaie
یک شنبه 06 اسفند 1391, 15:24 عصر
دوستان کسی نیست کمک کنه؟

hossein16
یک شنبه 06 اسفند 1391, 15:49 عصر
نه حل نمیشود. می تونی از کلاس زیر استفاده کنی و قبل از وارد کردن داده ها در دیتا بیس حروف "ی" و "ک" را به شکل عربی تبدیل کنید.
همینطور می توانید در مواقعی که نیاز به جستجوی کلمه ای شامل حروف "ی" و یا "ک" داشتید از کلاس استفاده کنید و تا حروف ی ک به معادل عربی تبدیل و سپس در دیتابیس عمل جستجو را انجام دهید.
public class convert_FarsiToArabic
{
public string Fa_to_Ar(string myStr)
{
myStr = (myStr.Replace("ی", "ي")).Replace("ک", "ك");
return myStr;
}
}