PDA

View Full Version : یه مشکل



shakiba_12
شنبه 24 اردیبهشت 1384, 21:02 عصر
من یک صفحه ای دارم که ی خوام در اون یک ریپیتر باشه و به دیتابیس وصل شه
که این اتصال رو در form load قرار دادم.
حالا کل کد html رو می خوام پاک کنم و بریزم در دیتابیس و یه متغیر در html تعریف کردم که جایگزین کنه

ولی وقتی کد رو پاک میکنم خب مسلما ریپیتر رو نمی شناسه
و در زمان form load ارور میده
خب اول میره در form load بعد میره در قسمت html و کد رو می خونه
چیکار کنم که اول کد رو بخونه و کد اچ تی ام ال رو جایگزین کنه بعد بره فرم لود

Behrouz_Rad
شنبه 24 اردیبهشت 1384, 23:02 عصر
آیا قصد ایجاد Skin برای صفحات رو دارید؟

shakiba_12
شنبه 24 اردیبهشت 1384, 23:44 عصر
منظورتون رو متوجه نمیشم :گیج:

Behrouz_Rad
شنبه 24 اردیبهشت 1384, 23:49 عصر
Skin به معنای پوسته است.
پوسته های مختلف برای ایجاد قالب های مختلف یک صفحه.

shakiba_12
یک شنبه 25 اردیبهشت 1384, 00:54 صبح
نه
من یه صفحه ایجاد کردم
اول داخلش قالبش رو طراحی کردم
حالا می خوام اون کد رو کات کنم و بریزم در دیتابیس
بعد قبل ورود به اون صفحه
در صفحه ی دیگه بریزم توی یک تکست باکس که کاربر در اون تغییرات مورد نظر خودشو ایجاد کنه
بعد کد تغییر یافته رو بریزم در همون صفحه ای که اولش ازش کات کردم

<%@ Page Language="vb" AutoEventWireup="false" Codebehind="weblog.aspx.vb" Inherits="blog.weblog"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
dir=rtl>
<%=temp%>
</HTML>
که این temp متغیر منه که می جایگزین بشه
مشکل اینه که من در همین صفحه در لود تعریف کردم ریپیتر به چی باند بشه
که کد این ریپیتر در temp هست و در لود هنوز ریپیتر رو نمی شناسه
من می خوام اول اون اجرا بشه و صفحه دیزاین بشه
در همون لحظه هم ریپیتر باند بشه
که در اون temp وقتی دیتا ها رو جایگزین کردم مشکلی پیش نیاد
مثلا این قسمتی از کد temp هست


<%# Container.DataItem("bodypost") %>
<br>-- <span lang="fa">نوشته شد در ساعت</span>
<%# Container.DataItem("datepost") %>

Behrouz_Rad
یک شنبه 25 اردیبهشت 1384, 07:56 صبح
چرا می فرمایید نه!
همان طور که بنده عرض کردم، قصد ایجاد یک قالب سفارشی برای صفحه خود با انتخاب کاربر را دارید. (همانند پرشین بلاگ)
برای هر قسمت صفحه یک User Control ایجاد کنید.
این قسمت ها می توانند به شکل زیر ایجاد شوند.
الف) Before Contents
ب) Contents
ج) After Contents
کافی است Repeater را در یوزر کنترل Contents قرار دهید و منبع داده آن را به وسیله یک خاصیت دریافت کنید.
در یوزر کنترل های دیگر نیز، کدهای HTML ای که قبل یا بعد از Repeater باید نمایش داده شوند را با گرفتن آنها از ورودی، چاپ کنید.

tayebeh
یک شنبه 25 اردیبهشت 1384, 08:32 صبح
دوست عزیز سلام
یک پروسیجر بصورت public تعریف کن .
<span dir=ltr>public sub subname()
.....
....
...
end sub
</span>
و بعد وقتی کاربر تغییراتشو اعمال کرد . خودت در پشت صحنه و ادامه تغییراتی که کاربر داده این پروسیجر رو صدا بزن . با این کار دیگه نیازی نیست حتما در page load عمل بایند رو انجام بدی .
با تشکر
بای

shakiba_12
یک شنبه 25 اردیبهشت 1384, 12:36 عصر
چرا می فرمایید نه!
همان طور که بنده عرض کردم، قصد ایجاد یک قالب سفارشی برای صفحه خود با انتخاب کاربر را دارید. (همانند پرشین بلاگ)
برای هر قسمت صفحه یک User Control ایجاد کنید.
این قسمت ها می توانند به شکل زیر ایجاد شوند.
الف) Before Contents
ب) Contents
ج) After Contents
کافی است Repeater را در یوزر کنترل Contents قرار دهید و منبع داده آن را به وسیله یک خاصیت دریافت کنید.
در یوزر کنترل های دیگر نیز، کدهای HTML ای که قبل یا بعد از Repeater باید نمایش داده شوند را با گرفتن آنها از ورودی، چاپ کنید.
من تابحال یوزرکنترل درست نکردم.
اگه میشه یه کم در موردش بیشتر توضیح بدید
:oops:

shakiba_12
یک شنبه 25 اردیبهشت 1384, 12:40 عصر
دوست عزیز سلام
یک پروسیجر بصورت public تعریف کن .
<span dir=ltr>public sub subname()
.....
....
...
end sub
</span>
و بعد وقتی کاربر تغییراتشو اعمال کرد . خودت در پشت صحنه و ادامه تغییراتی که کاربر داده این پروسیجر رو صدا بزن . با این کار دیگه نیازی نیست حتما در page load عمل بایند رو انجام بدی .
با تشکر
بای
عنی یه قالب ثابت در این پروسیجر تعریف بشه بعد تغییرات اعمال شده رو در این پروسیجر اپدیت کنم :گیج:

Behrouz_Rad
یک شنبه 25 اردیبهشت 1384, 20:46 عصر
من تابحال یوزرکنترل درست نکردم.
اگه میشه یه کم در موردش بیشتر توضیح بدید
در حال نوشتن مقاله ای جامع در 4 قسمت در مورد User Control ها و Custom Server Control ها هستم.
پس از اتمام، در این بخش قرار خواهم داد.

shakiba_12
یک شنبه 25 اردیبهشت 1384, 20:50 عصر
من تابحال یوزرکنترل درست نکردم.
اگه میشه یه کم در موردش بیشتر توضیح بدید
در حال نوشتن مقاله ای جامع در 4 قسمت در مورد User Control ها و Custom Server Control ها هستم.
پس از اتمام، در این بخش قرار خواهم داد.
خیلی عالیه
چقدر طول می کشه؟
چون من عجله دارم :oops:

Behrouz_Rad
یک شنبه 25 اردیبهشت 1384, 22:38 عصر
قسمت اول تا فردا بر روی سایت قرار میگیره اما پیشنهاد می کنم به دنبال کلمات User Control + ASP.NET در گوگل بگردید. اطلاعات و مقالات جامعی در این باب پیدا می کنید.

tayebeh
دوشنبه 26 اردیبهشت 1384, 08:58 صبح
دوست عزیزم لطفا میشه بگید شما می خواهید چه کاری انجام بدین که این راه حل رو در نظر گرفتین؟
به نظر من سئوالتونو خوب مطرح نکردین . من که یه مقدار گیج شدم .
یعنی ریپیتر شما فیلدهاش تغییر می کنه ؟
شما گفتین :

من یه صفحه ایجاد کردم
اول داخلش قالبش رو طراحی کردم
حالا می خوام اون کد رو کات کنم و بریزم در دیتابیس
بعد قبل ورود به اون صفحه
در صفحه ی دیگه بریزم توی یک تکست باکس که کاربر در اون تغییرات مورد نظر خودشو ایجاد کنه
بعد کد تغییر یافته رو بریزم در همون صفحه ای که اولش ازش کات کردم
خوب منم گفتم در همین صفحه اولی یه public sub تعریف کن که عمل بایند ریپیتر رو واستون انجام بده . زمانیکه کاربر دوباره به صفحه اولی بر می گرده این ساب صدا زده شود .
ولی اگه منظور شما اینه که ممکن فیلدهای ریپیتر تغییر کنه که فکر نمی کنم اینجور باشه . فکر می کنم از همون user controlها باید استفاده کنی . :strange: :strange: :strange: :گیج:

shakiba_12
دوشنبه 26 اردیبهشت 1384, 14:54 عصر
دوست عزیزم لطفا میشه بگید شما می خواهید چه کاری انجام بدین که این راه حل رو در نظر گرفتین؟
به نظر من سئوالتونو خوب مطرح نکردین . من که یه مقدار گیج شدم .
یعنی ریپیتر شما فیلدهاش تغییر می کنه ؟
شما گفتین :

من یه صفحه ایجاد کردم
اول داخلش قالبش رو طراحی کردم
حالا می خوام اون کد رو کات کنم و بریزم در دیتابیس
بعد قبل ورود به اون صفحه
در صفحه ی دیگه بریزم توی یک تکست باکس که کاربر در اون تغییرات مورد نظر خودشو ایجاد کنه
بعد کد تغییر یافته رو بریزم در همون صفحه ای که اولش ازش کات کردم
خوب منم گفتم در همین صفحه اولی یه public sub تعریف کن که عمل بایند ریپیتر رو واستون انجام بده . زمانیکه کاربر دوباره به صفحه اولی بر می گرده این ساب صدا زده شود .
ولی اگه منظور شما اینه که ممکن فیلدهای ریپیتر تغییر کنه که فکر نمی کنم اینجور باشه . فکر می کنم از همون user controlها باید استفاده کنی . :strange: :strange: :strange: :گیج:
من دقیقا منظورم طرح پرشین بلاگ هست
شما یه قالب رو انتخاب میکنید تغییرات رو در اون اعمال می کنید
تغییرات شما وارد دیتابیس میشه
و زمانیکه وبلاگ خودتون رو باز می کنید قالب مورد نظر خودتون رو می بینید
خب من در کد اچ تی ام ال
اومدم یک متغیر تعریف کردم
که این متغیر زمانیکه شما صفحه را باز کنید موقع لود صدا زده میشه
این متغیر هون قالب شماست که بنر و ریپیتر و ... همه مواردی که استفاده کردید درونش قرار گرفته
و در لودینگ صفحه من ریپیتر رو به دیتابیس وصل کردم
و خب وقتی شما آدرس وبلاگ خودتون رو یز نید
اول میره پیج لودینگ و میاد ریپیتر رو باند کنه که همین جا مشکل ایجاد میشه
چون هنوز ریپیتر رو نمی شناسه
چون در قسمت کد اچ تی ام ال متغیر میاد جایگزین میشه

فکر میکنم کاملا واضح باشه مشکل چیه