PDA

View Full Version : مبتدی: تغییر استایل سایت در زمان اجرا توسط کاربر



مَه سما
چهارشنبه 13 اسفند 1393, 17:53 عصر
سلام به دوستان گرامی.
من دارم یه سایت طراحی می کنم با سه تا استایل مختلف که کاربر بنا به سلیقه ی خودش یکی رو به عنوان استایلی که دوست داره سایتم رو از دفعه های بعد با اون ببینه انتخاب می کنه.
حالا می خوام بدونم که چه جوری این استایل رو در مرورگر کاربر ذخیره کنم تا وقتی کاربر یه استایل رو انتخاب می کنه، دفعه های بعد هم وقتی سایت رو باز می کنه همون استایل براش نمایش داده بشه؟:متفکر:
البته لطفا این رو در نظر بگیرید که من خیلی مبتدی هستم، پس بی زحمت مرحله به مرحله و واضح راهنماییم کنید:خجالت:


با تشکر فراوان.

FastDesign.ir
پنج شنبه 14 اسفند 1393, 00:35 صبح
سلام خدمت شما دوست گرامی
برای این کار مراحل زیر را در Visual Studio دنبال کنید:
1- بعد از باز کردن پروژه وب سایت، بر روی آن در پنجره solution explorer راست کلیک نموده و از منوی Add ASP.NET Folder زیر منوی Theme را انتخاب نمایید.
2- برای Theme خود یک نام دلخواه انتخاب نموده سپس بر روی آن راست کلیک نمایید؛ از زیر منوی باز شده Add new Item را انتخاب نموده و یک فایل Stylesheet ایجاد کنید.
3- تمامی استایل های مورد نظر تمِ خود را در این فایل کپی نموده و برای تمامی چهره های سایت مراحل بالا را تکرار نمایید.4- در صورتی که از مسترپیج استفاده می کنید به راحتی می توانید نام تم انتخابی کاربر را در رویداد Page_PreInit آن با دستور زیر تنظیم نمایید. در غیر این صورت باید کد زیر را در تمامی صفحات سایت تکرار نمایید.



Page.Theme = "UserTheme"
در نظر داشته باشید که می توانید بعد از انتخاب شدن استایل سایت توسط کاربر، نام استایل را در کوکی ذخیره نموده و از کد بالا را به صورت زیر استفاده نمایید.



Protected Sub SetTheme_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles SetTheme.Click
Dim themCookie As HttpCookie = New HttpCookie("themCookie")
themCookie.Value = "RedSkin"
themCookie.Expires = DateTime.Now.AddYears(1)
Response.Cookies.Add(themCookie)
Response.Redirect(Request.RawUrl)
End Sub


Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
Page.Theme = Request.Cookies("themCookie").Value
End Sub

البته کد ذخیره کوکی را می توان با jQuery نیز پیاده سازی نمود.