ورود

View Full Version : سوال: درباره فارسی نوشتن در dropdown



leila63
شنبه 16 مرداد 1389, 14:26 عصر
من یک dropdown دارم که بایندش کردم مشکل من اینه که می خوام وقتی یک مقدار از آن را کلیک می کنم دوتا مقدار از آن تو text نشون بده مثلا نام شخص انتخاب کنم شمارش و فامیلیش تو textbox biyad من این کارو با اسم انگلیسی انجام دادم ولی وقتی فارسی میزنم نمیشه لطفا کمک کنید

vbworm
شنبه 16 مرداد 1389, 14:48 عصر
یعنی فارسی ها بصورت ؟؟؟؟؟؟؟؟؟؟؟؟ میاد؟

mohammad.sakhidel
شنبه 16 مرداد 1389, 20:14 عصر
سلام.
هر ListItem علاوه بر خاصیت Text دارای خاصیتی بنام Vlaue هم هست. برای نمایش از Text استفاده میکنی ولی برای هر آیتم مقدار Valueرو هم با کلید اصلی ست کن. وقتی یه مورد رو انتخاب میکنی با استفاده از مقدار کلید (همون Value) میتونی به هر فیلدی از اون دست پیدا کنی.
امیدوارم مشکلتو درست متوجه شده باشم.




-----------------------------------------------------------------
بازار مرزی ایرانیان :: تجربه یک خرید ارزان و با کیفیت (http://www.bazaremarzi.com)

leila63
یک شنبه 17 مرداد 1389, 14:35 عصر
سلام.

هر ListItem علاوه بر خاصیت Text دارای خاصیتی بنام Vlaue هم هست. برای نمایش از Text استفاده میکنی ولی برای هر آیتم مقدار Valueرو هم با کلید اصلی ست کن. وقتی یه مورد رو انتخاب میکنی با استفاده از مقدار کلید (همون Value) میتونی به هر فیلدی از اون دست پیدا کنی.
امیدوارم مشکلتو درست متوجه شده باشم.


منمون خوب مشکل من همینه چطور دوتا value را باهاش ست کنم یکی رو با دستور datatextfiled مقدار دادم من در واقع یک کد می خوام که وقتی dropام پر شد با کیلیک بر روش دوتا مقدار از ان فیلده وارد دوتا فیلد کنه انگلیسیش میشه اگه اسم فارسی رو انتخاب کنی نمیشه راستی فارسی ها هم درست میاد یعنی ؟؟؟؟ نمیشه

mohammad.sakhidel
دوشنبه 18 مرداد 1389, 08:40 صبح
من متوجه نشدم میخوای چیکار کنی. اگه میشه کامل بگو چه کاری میخوای بکنی تا برات دقیقاً بگم چیکار کن.




-----------------------------------------------------------------
بازار مرزی ایرانیان :: تجربه یک خرید ارزان و با کیفیت (http://www.bazaremarzi.com)

leila63
دوشنبه 18 مرداد 1389, 10:10 صبح
من متوجه نشدم میخوای چیکار کنی. اگه میشه کامل بگو چه کاری میخوای بکنی تا برات دقیقاً بگم چیکار کن.



سلام ممنون از اینکه وقت واسم گذاشتی
من یک drop دارم و دوتا textbox می خوام وقتی روی یک اسم تو drop (فارسی)کلیک می کنم مثلا علی محمودی 2 تا از مشخصاتش مثل شمارش و آدرسش بیاد تو text هام مثلا آدرسش تو text اولی و شمارش تو text دومی بیاد البته من با اسم انگلیسی تونستم انکارو انجام بدم یعنی مثلا علی محمودی رو انگیلیسی می نویسم ali mahmodi قشنگ دوتا مقدارش تو text ها میاد ولی با فارسی نمیاد مقدارش تو text

خیلی سرچ کردم به این رسیدم که باید از خاصیت datavaluefieldبه صورت چندتایی استفاده کنم،یعنی دستور select باید فیلدهام با هم ادغام بشه دستورشو تو vb واستون میذارم ولی من سی شارپشو میخوام

public string ParseVal(string MyString, string KeyPos)

{
string functionReturnValue = null;
functionReturnValue = "";
if (!string.IsNullOrEmpty(MyString))
{
// PosStart = string.Intern(1, MyString, "~");
// if (PosStart > 0)
//{
switch (KeyPos)
{
case "1":
//functionReturnValue = pa(MyString, PosStart - 1);
functionReturnValue = "1";
break;
case "2":
//PosEnd = string.(PosStart + 1, MyString, "~");
//functionReturnValue = string.Mid(MyString, PosStart + 1, PosEnd - PosStart - 1);
functionReturnValue = "2";
break;
//case 3:
// PosStart = string.InStr(PosStart + 1, MyString, "~");
// functionReturnValue = string.Mid(MyString, PosStart + 1);
// break;
}
//}
}
return functionReturnValue;
}
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
SqlConnection sqlcon1 = new SqlConnection("Data Source=hadis\\SQLEXPRESS;Initial Catalog=model;Integrated Security=True");
SqlDataAdapter sqldata1 = new SqlDataAdapter("select * from gharardad", sqlcon1);
DataSet dataset1 = new DataSet();
sqldata1.Fill(dataset1, "gharardad");
DropDownList1.DataValueField = "mablagh";
// DropDownList1.DataValueField = "pishpardakht";
DropDownList1.DataTextField = "karfarma";
DropDownList1.DataSource = dataset1.Tables["gharardad"].DefaultView;
DropDownList1.DataBind();
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
TextBox1.Text = ParseVal(DropDownList1.SelectedItem.Value, "1");
TextBox2.Text = ParseVal(DropDownList1.SelectedItem.Value, "2");

}

mohammad.sakhidel
دوشنبه 18 مرداد 1389, 11:17 صبح
سلام
من اینطور متوجه شدم :
یه DropDownList داری که با فیلد اسم (مثال) پر میشه.
دو تا TextBox داری که میخوای با انتخاب هر فرد از لیست مشخصاتش در اون TextBox ها قرار بگیره.

خب داری پیچیدش میکنی.
وقتی لیستت رو پر میکنی (مثلاً در رخداد Load این کارو میکنی) این طوری لیستت رو پر میکنی :


ListItem item = new ListItem();
item.Value = "مقدار فیلد کلید مثلاً آیدی";
item.Text = "مقدار فیلدی که میخوای نمایش بدی";
DropDownList1.Items.Add(item);


وقتی روی یک آیتم از لیستت کلیک میکنی این طور عمل میکنی :


int id = Convert.ToInt32(DropDownList1.SelectedValue);
//....
// واکشی اطلاعات یک رکورد بر اساس id
//....
// بعدش هم به تکست باکس ها مقدار میدی


البته اگه میخوای PostBack نداشته باشی میتونی از UpdatePanel استفاده کنی.









-----------------------------------------------------------------
بازار مرزی ایرانیان :: تجربه یک خرید ارزان و با کیفیت (http://www.bazaremarzi.com)

leila63
چهارشنبه 20 مرداد 1389, 22:35 عصر
سلام

من اینطور متوجه شدم :
یه DropDownList داری که با فیلد اسم (مثال) پر میشه.
دو تا TextBox داری که میخوای با انتخاب هر فرد از لیست مشخصاتش در اون TextBox ها قرار بگیره.


خب داری پیچیدش میکنی.
وقتی لیستت رو پر میکنی (مثلاً در رخداد Load این کارو میکنی) این طوری لیستت رو پر میکنی :



ListItem item = new ListItem();




item.Value = "مقدار فیلد کلید مثلاً آیدی";

item.Text = "مقدار فیلدی که میخوای نمایش بدی";

DropDownList1.Items.Add(item);




//....



وقتی روی یک آیتم از لیستت کلیک میکنی این طور عمل میکنی :





int id = Convert.ToInt32(DropDownList1.SelectedValue);





// واکشی اطلاعات یک رکورد بر اساس id


//....


// بعدش هم به تکست باکس ها مقدار میدی




البته اگه میخوای PostBack نداشته باشی میتونی از UpdatePanel استفاده کنی.











سلام ببخشید من مشکلم حل نشد 2 روزم روش باز کار کرده ام من کدی که نوشتم را واستون می زنم پیغامی که میده اینه there is not continon rows خواهشا کمکم کنید در ضمن سوالم را خوب متوجه شده بودید


public partial class WebForm2 : System.Web.UI.Page

{
SqlConnection sqlCon;
SqlDataAdapter sqlAdap;
DataSet sqlDs;
string commandText = "";

protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
commandText = "select name_grandeh_tell from tblmoshtari";
sqlDs = new DataSet();
sqlDs = GetData(commandText);
DropDownList1.DataValueField = "name_grandeh_tell";
DropDownList1.DataSource = sqlDs.Tables[0];
DropDownList1.DataBind();
DropDownList1.Focus();

}
}

protected DataSet GetData(string sqlCommand)
{
string conString = "Data Source=HADIS\\SQLEXPRESS;Initial Catalog=model;Integrated Security=True";
sqlCon = new SqlConnection(conString);
sqlAdap = new SqlDataAdapter(sqlCommand, conString);
sqlDs = new DataSet();
sqlAdap.Fill(sqlDs);
return sqlDs;
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
commandText = "select natijeh_mozakerat,mobile from tblmoshtari where name_grandeh_tell='" + DropDownList1.SelectedItem.Value + "'";
sqlDs = new DataSet();
sqlDs = GetData(commandText);

TextBox4.Text =sqlDs.Tables[0].Rows[0][0].ToString();
TextBox7.Text = sqlDs.Tables[0].Rows[0][1].ToString();
// DropDownList1.Items.Insert(0, TextBox4.Text("code_customet"));

}

leila63
جمعه 22 مرداد 1389, 13:48 عصر
یعنی فارسی ها بصورت ؟؟؟؟؟؟؟؟؟؟؟؟ میاد؟

با سلام نه درست وارد drop میشن ولی وقتی رو آن کلیک می کنم می گه there is not contions rows لطفا کمکم کنید واسم مهمه

leila63
جمعه 22 مرداد 1389, 13:53 عصر
سلام ببخشید من مشکلم حل نشد 2 روزم روش باز کار کرده ام من کدی که نوشتم را واستون می زنم پیغامی که میده اینه there is not continon rows خواهشا کمکم کنید در ضمن سوالم را خوب متوجه شده بودید
[/right]

publicpartialclassWebForm2 : System.Web.UI.Page
{
SqlConnection sqlCon;
SqlDataAdapter sqlAdap;
DataSet sqlDs;
string commandText = "";


protectedvoid Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
commandText = "select name_grandeh_tell from tblmoshtari";
sqlDs = newDataSet();
sqlDs = GetData(commandText);
DropDownList1.DataValueField = "name_grandeh_tell";
DropDownList1.DataSource = sqlDs.Tables[0];
DropDownList1.DataBind();
DropDownList1.Focus();


}
}


protectedDataSet GetData(string sqlCommand)
{
string conString = "Data Source=HADIS\\SQLEXPRESS;Initial Catalog=model;Integrated Security=True";
sqlCon = newSqlConnection(conString);
sqlAdap = newSqlDataAdapter(sqlCommand, conString);
sqlDs = newDataSet();
sqlAdap.Fill(sqlDs);
return sqlDs;
}
protectedvoid DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
commandText = "select natijeh_mozakerat,mobile from tblmoshtari where name_grandeh_tell='" + DropDownList1.SelectedItem.Value + "'";
sqlDs = newDataSet();
sqlDs = GetData(commandText);


TextBox4.Text =sqlDs.Tables[0].Rows[0][0].ToString();
TextBox7.Text = sqlDs.Tables[0].Rows[0][1].ToString();
// DropDownList1.Items.Insert(0, TextBox4.Text("code_customet"));
}


یا سلام لطفا به من کمک کنید براتون کدم رو گذاشتم error naraderh faghad ye beark داره در selectindexish برام خیلی مهمه

leila63
جمعه 22 مرداد 1389, 13:55 عصر
سلام ببخشید من مشکلم حل نشد 2 روزم روش باز کار کرده ام من کدی که نوشتم را واستون می زنم پیغامی که میده اینه there is not continon rows خواهشا کمکم کنید در ضمن سوالم را خوب متوجه شده بودید
[/right]

publicpartialclassWebForm2 : System.Web.UI.Page
{
SqlConnection sqlCon;
SqlDataAdapter sqlAdap;
DataSet sqlDs;
string commandText = "";


protectedvoid Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
commandText = "select name_grandeh_tell from tblmoshtari";
sqlDs = newDataSet();
sqlDs = GetData(commandText);
DropDownList1.DataValueField = "name_grandeh_tell";
DropDownList1.DataSource = sqlDs.Tables[0];
DropDownList1.DataBind();
DropDownList1.Focus();


}
}


protectedDataSet GetData(string sqlCommand)
{
string conString = "Data Source=HADIS\\SQLEXPRESS;Initial Catalog=model;Integrated Security=True";
sqlCon = newSqlConnection(conString);
sqlAdap = newSqlDataAdapter(sqlCommand, conString);
sqlDs = newDataSet();
sqlAdap.Fill(sqlDs);
return sqlDs;
}
protectedvoid DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
commandText = "select natijeh_mozakerat,mobile from tblmoshtari where name_grandeh_tell='" + DropDownList1.SelectedItem.Value + "'";
sqlDs = newDataSet();
sqlDs = GetData(commandText);


TextBox4.Text =sqlDs.Tables[0].Rows[0][0].ToString();
TextBox7.Text = sqlDs.Tables[0].Rows[0][1].ToString();
// DropDownList1.Items.Insert(0, TextBox4.Text("code_customet"));
}

لطفا اشکال کدم را بگید یک beark میده error nistتوی select index داخل rows