你的位置:首页 > ASP.net教程

[ASP.net教程]Rich控件二


Calendar控件 

使用案例:

在Default.aspx中:

<div>

  <h1>Calendar控件</h1>

    <asp:Calendar ID="Calendar1" runat="server" BackColor="#FFFFCC" BorderColor="#FFCC66" BorderWidth="1px" 

                DayNameFormat="Shortest" Font-Names="VerDana" Font-Size="8pt" ForeColor="#663399" Height="300px"

                ShowGridLines="true" width="400px" OnDayRender="Calendar1_DayRender" OnSelectionChanged="Calendar1_SelectionChanged" 

      OnVisibleMonthChanged="Calendar1_VisibleMonthChanged">

                <SelectedDayStyle BackColor="#CCCCFF" Font-Bold="true"/>

                <SelectorStyle BackColor="#FFCC66"/>

                <TodayDayStyle BackColor="#FFCC66" ForeColor="White"/>

                <OtherMonthDayStyle BackColor="#CC9966"/>

                <NextPrevStyle Font-Size="9pt" ForeColor="#FFFFCC"/>

                <DayHeaderStyle BackColor="#FFCC66" Font-Bold="true" Height="1px"/>

                <TitleStyle BackColor="#660000" Font-Bold="true" Font-Size="9pt" ForeColor="#FFFFCC"/>

            </asp:Calendar>

  <br/>

  <br/>

  <asp:Label ID="Label1" runat="server"/>

</div>


在Default.aspx.cs中:

protected void Calendar1_DayRender(object sender, DayRenderEventArgs e){  //定义假日显示样式1  Style vacStyle1 = new Style();  vacStyle1.BackColor = System.Drawing.Color.Violet;  vacStyle1.BorderColor = System.Drawing.Color.Wheat;  vacStyle1.BorderWidth = 4;  //定义假日显示样式1  Style vacStyle2 = new Style();  vacStyle2.BackColor = System.Drawing.Color.Red;  vacStyle2.BorderColor = System.Drawing.Color.PaleVioletRed;  vacStyle2.BorderWidth = 4;  //定义周末显示样式  Style weekStyle = new Style();  weekStyle.BackColor = System.Drawing.Color.Gold;  string title1 = "十一长假";//假日提示内容  string title2 = "中秋节";  if ((e.Day.Date == new DateTime(2015, 9, 27)))  {    //应用样式到假日    e.Cell.ApplyStyle(vacStyle2);    //定义假日显示内容,并为假日提供链接    Label Label1 = new Label();    Label1.Text = "<br>" + "<a href=" + e.SelectUrl + ">" + title2 + "</a>";    e.Cell.Controls.Add(Label1);  }  if ((e.Day.Date >= new DateTime(2015, 10, 1)) && (e.Day.Date <= new DateTime(2015, 10, 7)))  {    //应用样式到假日    e.Cell.ApplyStyle(vacStyle1);    //定义假日显示内容,并为假日提供链接    Label Label1 = new Label();    Label1.Text = "<br>" + "<a href=" + e.SelectUrl + ">" + title1 + "</a>";    e.Cell.Controls.Add(Label1);  }  else if (e.Day.IsWeekend)    e.Cell.ApplyStyle(weekStyle);  DateTime mytime = new DateTime(2015, 10, 1);  if (e.Day.Date == mytime)    e.Day.IsSelectable = true;  else    e.Day.IsSelectable = false; }protected void Calendar1_SelectionChanged(object sender, EventArgs e){  this.Label1.Text = "今天是:" + this.Calendar1.TodaysDate.ToShortDateString() + "<br>" + "你选择的日期是:"+ 
    this.Calendar1.SelectedDate.ToShortDateString();}protected void Calendar1_VisibleMonthChanged(object sender, MonthChangedEventArgs e){  if (e.NewDate.Month > e.PreviousDate.Month)  {    this.Label1.Text = "下一个月";  }  else  {    this.Label1.Text = "上一个月";  }}

AdRotator控件

读取文件中的广告信息

在AdRotator1.ad中:

<Advertisements 

在Default.aspx中:

<div>
  <asp:AdRotator ID="AdRotator1" runat="server"AdvertisementFile="~/App_Data/AdRotator1.ad" /></div>

读取数据库文件中的广告信息

在Web.config中:

<connectionStrings>  <add name="ConnectionString1" connectionString="Data Source=追风的蜗牛;Initial Catalog=Adrotator;Integrated Security=True"/></connectionStrings>

在Dfault.aspx.cs中:

<div>  <asp:AdRotator ID="AdRotator1" runat="server" DataSourceID="SqlDataSource1" />
  <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ConnectionStrings:ConnectionString1%>"
    SelectCommand="SELECT [ID],[ImageUrl],[NavigateUrl],[Impressions],[AlternateText] FROM Advertisements">  </asp:SqlDataSource></div>

MultiView和View控件

在Default.aspx中:

<div>  <asp:Label Text="请选择显示样式:" runat="server"></asp:Label>  <br/>  <asp:RadioBUtton ID="RadioButton1" runat="server" AutoPostBack="true" Text="样式1" GroupName="Group1" 
    OnCheckedChanged="RadioButton_CheckedChanged" />    <asp:RadioButton ID="RadioButton2" runat="server" AutoPostBack="true" Text="样式2" GroupName="Group1"
    OnCheckedChanged="RadioButton_CheckedChanged" />  <hr/>  <asp:MultiView ID="MultiView1" runat="server">    <asp:View ID="View1" runat="server">      <asp:Label ID="Label1" Text="样式一" runat="server"></asp:Label>    </asp:View>    <asp:View ID="View2" runat="server">      <asp:Label ID="Label2" Text="样式二" runat="server"></asp:Label>    </asp:View>  </asp:MultiView></div>

在Default.aspx.cs中:

protected void RadioButton_CheckedChanged(object sender, EventArgs e){
  if (this.RadioButton1.Checked)    MultiView1.ActiveViewIndex = 0;  else if (this.RadioButton2.Checked)    MultiView1.ActiveViewIndex = 1;}

Wizard控件

在Default.aspx中:

<div>  <asp:Wizard ID="Wizard1" runat="server">    <WizardSteps>      <asp:WizardStep Title="step1" runat="server">        <asp:Label runat="server" Text="姓名:"/>        <asp:TextBox ID="TextBox1" runat="server"/>      </asp:WizardStep>      <asp:WizardStep Title="step2" runat="server">        <asp:Label runat="server" Text="性别:"/>        <asp:TextBox runat="server" ID="TextBox2"/>      </asp:WizardStep>      <asp:WizardStep Title="step3" runat="server">        <asp:Label runat="server" Text="电话:"/>        <asp:TextBox ID="TextBox3" runat="server" />      </asp:WizardStep>    </WizardSteps>  </asp:Wizard></div>