PDA

View Full Version : نمایش رشته بجای عدد



alireza244
دوشنبه 18 آبان 1388, 10:24 صبح
با سلام
چطوری میشه تو یه دیتا گرید وقتی از بانک یه عدد میخونیم اگر یک بود بجاش یه عبارت را نشون بده و یا اگر عدد دیگه ای بود یه رشته ای دیگه را نشون بده

Mostafa_Dindar
دوشنبه 18 آبان 1388, 10:45 صبح
تو رويداد RowDataBound كنترل گريد ويو ميتوني مقاديري كه به گريد ويو Bind ميشه رو بدست بياري و اونو تغيير بدي .
مثلا ميخواي به Price از نوع Integer هست مقدار "تومان" رو هم كنارش اضافه كني و بسياري از شرايط ديگر ....

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.Cells[2].Text != null)
{
e.Row.Cells[2].Text = Utility.ToPersianDate(e.Row.Cells[2].Text);
}
}
}

mehdi.mousavi
دوشنبه 18 آبان 1388, 10:47 صبح
با سلام چطوری میشه تو یه دیتا گرید وقتی از بانک یه عدد میخونیم اگر یک بود بجاش یه عبارت را نشون بده و یا اگر عدد دیگه ای بود یه رشته ای دیگه را نشون بده

سلام.
کنترل DataGrid متعلق به .NET Framework 1 هستش و در نسخه 2 به بعد کنترل GridView جایگزین این کنترل شده اگر چه برای backward compatibility هنوز از DataGrid پشتیبانی میشه. بنابراین بهتون توصیه میکنم از GridView استفاده کنید.

اما در هر حال، در DataGrid هنگام Bind کردن میتونید در فایل ASPX اینگونه کدتون رو بنویسید:


<%# Convert.ToInt32(DataBinder.Eval(Container, "DataItem.MyNumber")) == 5 ? "MyNumber is five!" : "MyNumber is not five!" %>

بدین ترتیب، اگر MyNumber عدد 5 باشه عبارت MyNumber is five! نمایش داده میشه، در غیر اینصورت پیام دوم...

موفق باشید.