PDA

View Full Version : پاک شدن مقدار فیلد template هنگام انتخاب کردن سطر درgridview



صنم
شنبه 19 مرداد 1387, 10:50 صبح
سلام
من یک مشکل با gridview دارم یکی از ستون های من که ستون تاریخ است بصورت template تعریف کردم وقتی صفحه load می شه این فیلد درست نمایش داده می شود ولی وقتی سطری از جدول رو انتخاب می کنم مقدار فیلد template خالی است اینم بگم که من مقدار این فیلد template رو با استفاده از کد زیر در GridView1_RowDataBound پر می کنم ( تاریخ میلادی را گرفته به شمسی تبدیل می کنم )


protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{

if ((e.Row.RowType == DataControlRowType.DataRow ) & (e.Row.RowType!=DataControlRowType.Footer))
{
DateTime datefromdb=Convert.ToDateTime(DataBinder.Eval(e.Ro w.DataItem,"date1"));

System.Globalization.PersianCalendar PersianCalendar = new PersianCalendar();
int daytoshamsi = PersianCalendar.GetDayOfMonth(datefromdb);
int monthtoshamsi = PersianCalendar.GetMonth(datefromdb);
int yeartoyear = PersianCalendar.GetYear(datefromdb);

e.Row.Cells[5].Text = daytoshamsi+ "/" + monthtoshamsi + "/"+ yeartoyear;
}


}


فکر می کنم در موقع انتخاب سطر هم باید یک همچین تبدیلی انجام بد م ولی نمی دونم کجا ؟

meysam_12001
شنبه 19 مرداد 1387, 23:07 عصر
این کدی که اینجا گذاشتی درسته ، برای حالت select هم درست جواب میده نیاز به مورد دیگه ای ندارد.
کد Html مربوط به گرید و کد Pageloadت یا خود پروژت رو بگذار تا جواب دقیق سوالت داده بشه.

DotNet_King
یک شنبه 20 مرداد 1387, 00:09 صبح
سلام
من یک مشکل با gridview دارم یکی از ستون های من که ستون تاریخ است بصورت template تعریف کردم وقتی صفحه load می شه این فیلد درست نمایش داده می شود ولی وقتی سطری از جدول رو انتخاب می کنم مقدار فیلد template خالی است اینم بگم که من مقدار این فیلد template رو با استفاده از کد زیر در GridView1_RowDataBound پر می کنم ( تاریخ میلادی را گرفته به شمسی تبدیل می کنم )


protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{

if ((e.Row.RowType == DataControlRowType.DataRow ) & (e.Row.RowType!=DataControlRowType.Footer))
{
DateTime datefromdb=Convert.ToDateTime(DataBinder.Eval(e.Ro w.DataItem,"date1"));

System.Globalization.PersianCalendar PersianCalendar = new PersianCalendar();
int daytoshamsi = PersianCalendar.GetDayOfMonth(datefromdb);
int monthtoshamsi = PersianCalendar.GetMonth(datefromdb);
int yeartoyear = PersianCalendar.GetYear(datefromdb);

e.Row.Cells[5].Text = daytoshamsi+ "/" + monthtoshamsi + "/"+ yeartoyear;
}


}


فکر می کنم در موقع انتخاب سطر هم باید یک همچین تبدیلی انجام بد م ولی نمی دونم کجا ؟


منظوزتون از انتخاب سطر هنگام ادیت کردنه یا در موقعی دیگه؟

صنم
یک شنبه 20 مرداد 1387, 08:24 صبح
انتخاب سطر ،به صورت معمولی ، نه در موقع ادیت .

DotNet_King
یک شنبه 20 مرداد 1387, 11:19 صبح
بیشتر توضیح بدید شاید بتونم کمکتون کنم
مثلا قصد دارید واسه هر سطر یه چک باکس بزارید بعدش و ...