我想实现这样的效果,asp.net中不是有一个calendar控件吗,默认是星期显示是 “星期一”,将它改为“一”,同时自动把当天日期高亮显示,不是本月日期自动隐藏,找了半天都没找到,我也懒得去找书了,而且它里面现有的属性也并不能完全实现,谢谢各位的不吝赐教!

解决方案 »

  1.   

    关注一下 todaystyle,DayNameFormat属性
      

  2.   

    把otherMonthdaystyle属性下面的Font属性下的foreColor属性设为ButtonHighlight
      

  3.   

    已解决
    using System.Globalization;
    public class Test : System.Web.UI.Page     {         protected System.Web.UI.WebControls.Calendar Calendar1;         private System.Threading.Thread t;         private CultureInfo oldCulture;              private void Page_Load(object sender, System.EventArgs e)         {              // 在此处放置用户代码以初始化页面         }          #region Web 窗体设计器生成的代码         override protected void OnInit(EventArgs e)         {              //              // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。              //              InitializeComponent();              base.OnInit(e);         }                  /// <summary>         /// 设计器支持所需的方法 - 不要使用代码编辑器修改         /// 此方法的内容。         /// </summary>         private void InitializeComponent()         {                  this.Calendar1.DayRender += new System.Web.UI.WebControls.DayRenderEventHandler(this.Calendar1_DayRender);              this.Calendar1.PreRender += new System.EventHandler(this.Calendar1_PreRender);              this.Load += new System.EventHandler(this.Page_Load);          }         #endregion          private void Calendar1_DayRender(object sender, System.Web.UI.WebControls.DayRenderEventArgs e)         {              t.CurrentCulture=this.oldCulture;             }          private void Calendar1_PreRender(object sender, System.EventArgs e)         {              t=System.Threading.Thread.CurrentThread;               oldCulture=t.CurrentCulture;               CultureInfo newci=(CultureInfo)oldCulture.Clone();               newci.DateTimeFormat.DayNames=new string[]{"日","一","二","三","四","五","六"};               newci.DateTimeFormat.FirstDayOfWeek=DayOfWeek.Sunday;               t.CurrentCulture=newci;         }     }