PDA

View Full Version : سوال: کار با appconfig



antisocial
شنبه 12 اردیبهشت 1388, 01:41 صبح
سلام
من يه فرم دارم که ميخوام با استفاده از appconfig دو زبانش کنم يعني فارسي وانگليسي
توي فايل پيکربنديم هم اينارو نوشتم



<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="FormPr" value="فرم"/>
<add key="ButtonPr" value="دکمه"/>
<add key="Rightl" value="true"/>
<add key="Right" value="System.Windows.Forms.RightToLeft.Yes"/>
<add key="FormEn" value="Form"/>
<add key="ButtonEn" value="Button"/>
</appSettings>
</configuration>


و موقعي که ميخوام فرم فارسي بشه اين دستورات رو اجرا ميکنم


System.Configuration.AppSettingsReader AppReader = new System.Configuration.AppSettingsReader();
this.Text = Convert.ToString((AppReader.GetValue("FormPr", typeof(System.String))));
bt.Text = Convert.ToString((AppReader.GetValue("ButtonPr", typeof(System.String))));
this.RightToLeftLayout = (Boolean )((AppReader.GetValue("Rightl", typeof(System.Boolean))));
this.RightToLeft = (System.Windows.Forms.RightToLeft )(AppReader.GetValue("Right", typeof(System.Windows.Forms.RightToLeft)));


اما در قسمت راست به چپ شدن ارور ميده.چرا؟

antisocial
شنبه 12 اردیبهشت 1388, 23:24 عصر
ممنون
اما من منظورم RightToLeft بود نه RightToLeftLayout تو اون حالت ازاول مشکلی نداشتم

prankster
یک شنبه 13 اردیبهشت 1388, 08:27 صبح
مقدار enum درون config صحيح نيست. تنها "Yes" براي بازيابي enum كافي است.

اينجا را ببينيد:


System.Windows.Forms.RightToLeft layout =
(System.Windows.Forms.RightToLeft)Enum.Parse(typeo f(System.Windows.Forms.RightToLeft), "Yes");