יצירת תפריט ניווט ב asp.net
מאמר זה מסביר כיצד ליצור תפריט בasp.net תוך כדי שימוש בServer Variables
ניצור דף בשם menu.ascx שאותו נכניס בתוך כל אחד מהקבצים של האתר
הינה הקוד ווהסבר 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 <%@ Import Namespace="System.IO" %>
<script runat="server">
dim url as string
sub Page_Load(obj as Object, e as EventArgs)
url = request.ServerVariables("SCRIPT_NAME")
select case Path.GetFileName(url)
case "home.aspx"
HLhome.text = "<b>" + "Home" + "</b>"
case "forum.aspx"
HLforum.text = "<b>" + "Forum" + "</b>"
end select
end sub
</script>
<html><body>
<asp:hyperlink id='HLhome' runat='server' navigateurl='home.aspx' >Home</asp:hyperlink>
<asp:hyperlink id='HLforum' runat='server' navigateurl='forum.aspx' >Forum</asp:hyperlink>
</html></body>
הסבר:
תחילה הגדרנו את מרחב השמות IO כדי שיהיה אפשר לזהות את כתובת העמוד לפי תיקיות קובץ, קובץ עם סיומת ולא כמחרוזת אחת בלי קשר בין דבר למשנהו
הגדרנו את המילה url כ string שתהיה שווה לכתובת העמוד יצרנו משפט select אשר בודק את הurl שהוא כתובת העמוד ובעזרת הIO שהגדרנו נוכל לקבל את שם הקובץ (filename)
ועכשיו עושים דבר מאד פשוט אם שם הקובץ הוא home.aspx הטקסט של הכפתור home שרשמנו יותר למטה יהיה מודגש
כעת נכתוב את העמוד home.aspx 1
2
3
4
5
6
7 <%@ Register TagPrefix="MySite" TagName="headermenu" Src="menu.ascx" %>
<form runat="server">
<MySite:headermenu id="headermenu" runat="server">
</MySite:headermenu>
<br>
Home
</form>
כאן פשוט הצבנו את הקובץ שהכנו והינה התוצאה:
בשביל להוציא את שם הקובץ כולל סיומת יש לכתוב:
בשביל להוציא את שם הקובץ ללא סיומת יש לכתוב:
בשביל להוציא את סיומת הקובץ בלבד יש לכתוב:
בשביל להוציא את כונן הקובץ בלבד יש לכתוב:
בשביל להוציא את תיקיית הקובץ בלבד יש לכתוב:
תכנות נעים!
תגובות בפייסבוק