چگونه در یک text box بخشی از اعداد فارسی و بخشی دیگر انگلیسی نشان داده شود ؟
سلام
متنی دارم که شامل دو بخش عدد هست که با کاما از هم جدا می شوند. می خوام اعداد بخش اول فارسی و اعداد بخش دوم انگلیسی نشون داده بشه و به همون صورت در دیتابیس ذخیره بشه.مثلا 33،45 که 45 انگلیسی و 33 فارسی باید باشه!
نقل قول: چگونه در یک text box بخشی از اعداد فارسی و بخشی دیگر انگلیسی نشان داده شود ؟
فکرنکنم همچین کاری بشه کرد چون نوع فونتی که انتخاب می کنی مشخص می کنه که طرز نوشتن اعداد به چه شکله و نمیشه دو تا فونت برا یه تکست گذاشت
نقل قول: چگونه در یک text box بخشی از اعداد فارسی و بخشی دیگر انگلیسی نشان داده شود ؟
تا جایی که من میدونم فارسی و انگلیسی بودن اعداد مربوط به Regional and language option ویندوز میشه یا شما خودت توی برنامه culture رو روی چیز خاصی تنظیم کنی
در مورد ذخیره در دیتابیس به صورت فارسی و انگلیسی خب میشه تنظیم کنی که یکی Unicode یا ,UTF-8 ذخیره بشه و اونی که انگلیسیه از نوع Ascii
وقتی قابلیتی مثل context در word وجود داره که بسته به جهت نوشتن اعداد روی فارسی یا انگلیسی می کنه پیاده کردنش در نرم افزار های دیگه هم ممکنه ! ولی اینکه چگونه میشه چنین قابلیتی رو در یک textbox نشون داد از دانش من خارجه !
نقل قول: چگونه در یک text box بخشی از اعداد فارسی و بخشی دیگر انگلیسی نشان داده شود ؟
نقل قول:
نوشته شده توسط
konkoory_82
سلام
متنی دارم که شامل دو بخش عدد هست که با کاما از هم جدا می شوند. می خوام اعداد بخش اول فارسی و اعداد بخش دوم انگلیسی نشون داده بشه و به همون صورت در دیتابیس ذخیره بشه.مثلا 33،45 که 45 انگلیسی و 33 فارسی باید باشه!
نميتوني چنين كاري رو بكني. خودتو خسته نكن.براي نمايش ميتوني دو تا تكست باكس رو به هم بچسبوني اما براي ذخيره سازي هر دو بصورت انگليسي ذخيره ميشه.
نقل قول: چگونه در یک text box بخشی از اعداد فارسی و بخشی دیگر انگلیسی نشان داده شود ؟
نقل قول:
نوشته شده توسط
konkoory_82
سلام
متنی دارم که شامل دو بخش عدد هست که با کاما از هم جدا می شوند. می خوام اعداد بخش اول فارسی و اعداد بخش دوم انگلیسی نشون داده بشه و به همون صورت در دیتابیس ذخیره بشه.مثلا 33،45 که 45 انگلیسی و 33 فارسی باید باشه!
private void Form1_Load(object sender, EventArgs e)
{
float n = 12.34F;
float m = 56.78F;
textBox1.Text = FloatToString(m, true) + " , " + FloatToString(n, false);
}
private string FloatToString(float value, bool persian)
{
string text = value.ToString();
char baseChar = ((int)0).ToString()[0];
char zeroChar = (persian) ? '\u06F0' : '\u0030';
StringBuilder newText = new StringBuilder();
foreach (char ch in text)
if ((ch >= baseChar) && (ch <= baseChar + 9))
newText.Append((char)(zeroChar + ch - baseChar));
else
newText.Append(ch);
return newText.ToString();
}
نقل قول: چگونه در یک text box بخشی از اعداد فارسی و بخشی دیگر انگلیسی نشان داده شود ؟
نقل قول:
نوشته شده توسط
the king
private void Form1_Load(object sender, EventArgs e)
{
float n = 12.34F;
float m = 56.78F;
textBox1.Text = FloatToString(m, true) + " , " + FloatToString(n, false);
}
private string FloatToString(float value, bool persian)
{
string text = value.ToString();
char baseChar = ((int)0).ToString()[0];
char zeroChar = (persian) ? '\u06F0' : '\u0030';
StringBuilder newText = new StringBuilder();
foreach (char ch in text)
if ((ch >= baseChar) && (ch <= baseChar + 9))
newText.Append((char)(zeroChar + ch - baseChar));
else
newText.Append(ch);
return newText.ToString();
}
ممنون واقعا الگوریتم زیبایی بود