|
|
|
วิธีจัดการ event ใน calendar เมื่อคลิ้กไปยังวันที่ |
|
|
|
|
|
|
|
พอดีผมกำลังจะทำหน้าเว็บที่มีปฏิทิน เพื่อแสดงว่าวันไหนมี เหตุการณ์อะไรบ้างโดยดึงข้อมูลจาก Dtabase ที่ประกอบไปด้วย ID,ชื่อเรื่อง,วันที่
โดยที่ผมต้องการให้แสดงสีของวันที่มีเหตุการณ์ต่างไปจากวันอื่น แล้วเมื่อคลิ้กวันนั้นจะมีการแสดงเหตุการณื โดย GridView
แต่ผมไม่เข้าใจการ select ข้อมมูลมาแสดง ช่วยดูให้ทีน่ะครับCode (C#)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Security;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Drawing;
namespace Project
{
public partial class testCalendar : System.Web.UI.Page
{
clsDatabase clsDB = new clsDatabase();
SqlConnection mycn;
SqlDataAdapter myda;
DataSet ds = new DataSet();
DataSet dsSelDate;
String strConn;
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
strConn = "Data Source=localhost;uid=sa;pwd=1234;Initial Catalog=northwind";
mycn = new SqlConnection(strConn);
myda = new SqlDataAdapter("Select * FROM Calendar_Event", mycn);
//myda.Fill(ds, "Table");
GridView1.Visible = false;
Calendar1.TodayDayStyle.BackColor = Color.Gray; //สี background ของวันนี้
Calendar1.TodayDayStyle.ForeColor = Color.White; //สี ตัวหนังสือ ของวันนี้
}
protected void CalendarDRender(object sender, System.Web.UI.WebControls.DayRenderEventArgs e)
{
// If the month is CurrentMonth
if (!e.Day.IsOtherMonth)
{
foreach (DataRow dr in ds.Tables[0].Rows)
{
if ((dr["DueDate"].ToString() != DBNull.Value.ToString()))
{
DateTime dtEvent = (DateTime)dr["DueDate"];
if (dtEvent.Equals(e.Day.Date))
{
e.Cell.BackColor = Color.PaleVioletRed;
}
}
}
}
//If the month is not CurrentMonth then hide the Dates
else
{
e.Cell.Text = "";
}
}
protected void Calendar1_SelectionChanged1(object sender, EventArgs e)
{
//ดึง format เวลาจาก calendar
System.Globalization.CultureInfo en = new System.Globalization.CultureInfo("en-US");
String Date_clik = Calendar1.SelectedDate.ToString("MM/dd/yyyy", en);
this.Literal1.Text = Date_clik;
Literal1.Visible = true;
myda = new SqlDataAdapter("Select * from Calendar_Event where DueDate='" + Calendar1.SelectedDate.ToString("MM/dd/yyyy", en) + "'", mycn);
dsSelDate = new DataSet();
//myda.Fill(dsSelDate, "AllTables");
/*
if (dsSelDate.Tables[0].Rows.Count == 0)
{
GridView1.Visible = false;
}
else*/
{
GridView1.Visible = true;
GridView1.DataSource = dsSelDate;
GridView1.DataBind();
// DataGrid1.DataSource = dsSelDate;
// DataGrid1.DataBind();
}
}
}
}
Tag : .NET, Ms SQL Server 2008, Web (ASP.NET), C#, VS 2010 (.NET 4.x)
|
|
|
|
|
|
Date :
2011-02-02 12:25:27 |
By :
marsman |
View :
1187 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่มีใครช่วยตอบเลยเหรอครับ
|
|
|
|
|
Date :
2011-02-11 10:46:17 |
By :
marsman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|