View Full Version : مشکل در نمایش تاریخ شمسی در گرید ویو
mankanhamed
پنج شنبه 25 اردیبهشت 1393, 16:10 عصر
باسلام
تاریخ رو توی دیتابیس میلادی ذخیره می کنم ولی برای نمایش در گرید ویو نمی دونم باید چه کار کنم. الان همون میلادی نشون میده.
روی لیبل توی فرم به صورت شمسی تونستم بیارم. تمام توابع تبدیلش کار می کنه و می دونم چی به چیه. فقط اینو می خوام بدون که تو گرید ویو باید چه کار کنم.
با تشکر
niloofar1234
پنج شنبه 25 اردیبهشت 1393, 16:25 عصر
سلام
این تابعشه:
static PersianCalendar persianCalendar = new PersianCalendar();
public static string ToShamsi(DateTime miladiDate)
{
string year = persianCalendar.GetYear(miladiDate).ToString();
string month = persianCalendar.GetMonth(miladiDate).ToString().Pa dLeft(2, '0');
string day = persianCalendar.GetDayOfMonth(miladiDate).ToString ().PadLeft(2, '0');
return year + "/" + month + "/" + day;
}
فقط اگر می خوای توو گریدویو شمسی نشون بده باید ستون تاریخ رو به template تبدیل کنی و در خاصیت text کد زیر رو بزن:
<%# ToShamsi(Convert.ToDateTime(Eval("NewsDate")))%>
مثل این نمونه که برات گذاشتم:
<asp:TemplateField HeaderText="تاریخ درج" SortExpression="NewsDate">
<EditItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("NewsDate") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# ToShamsi(Convert.ToDateTime(Eval("NewsDate")))%> '></asp:Label>
</ItemTemplate>
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.