• ASP.NET学习笔记4


    2016.4.15

    1、TextChanged事件
    当控件失去焦点时自动回发到服务器触发事件,需要AutoPostBack属性设为true
     
    2、指定格式转化
    int.ToString(string format);
    format:一个数值格式的字符串,返回值是有format指定的字符串表示形式
    格式化为金额:
    double money = Convert.ToDouble(tb5.Text);
    lb1.Text = money.ToString("$#,###.00");
     
    3、ListBox控件
    动态添加数据:this.ListBox1.Items.Add(new ListItem("1" + " " + "北京"));
    隔行换色:
    1 for (int i = 0; i < this.ListBox1.Items.Count; i++)
    2             {
    3                 if ((i % 2) == 0)
    4                 {
    5 this.ListBox1.Items[i].Attributes.Add("style", "background-color:#EEEEEE");//Attributes获得属性名称的集合,值为类不直接支持的ListItems对象
    6                 }
    7             }
    SelectedItem事件:
    当控件选中一项属性时触发事件,需要AutoPostBack属性设为true
    选中的内容:ListBox1.SelectedItem.Text;
     
    2016.4.16
    1、通过DropDownList控件的SelectedIndexChanged事件实现二级联动下拉菜单,需AutoPostBack属性设为true
     
    2、SelecionMode为Single时,不能选择多项
     
    3.单选控件 RadioButtonList
      多选控件 CheckBoxList
     
    4、用位运算实现加法
     1 public static int jia(int a,int b)
     2 {
     3  if(a==0)
     4 {
     5 return b;
     6 }
     7 else if(b==0)
     8 {
     9 return a;
    10 }
    11 else if
    12 {
    13 int temp = a^b;
    14 int wei = a&b;
    15 wei =wei<<1;
    16 return jia(temp,wei);
    17 }
    18 }
    19  

    2016.4.17

    1、Panel容器控件 显示和隐藏
    p1.Visible = true;
    p2.Visible = false;
    动态添加控件:
     1 Label lb3 = new Label();
     2 lb3.Text = "账号:";
     3 TextBox tb3 = new TextBox();
     4 tb3.ID = "tb3";
     5 Label lb4 = new Label();
     6 lb4.Text = "密码:"; 
     7 p2.Controls.Clear();
     8 p2.Controls.Add(lb3);
     9 p2.Controls.Add(tb3);
    10 p2.Controls.Add(new LiteralControl("<br/>"));
    11  
    2、Calendar日期控件:
    Selecteddate:选定的单个日期
    SelectedDates:选定的日期范围
     
    3、Login控件 验证用户的登陆信息
    Authenticate事件:e.Authenticated = true;
     
    4、CreateUserWizard控件 注册新用户
    Web.config文件<add>节点中:
    minRequiredPasswordLength//密码长度
    minRequireNonalphanumericCharacters//混合其他字符个数
     
    5、TextBox不包含onkeyup属性,在浏览器中被解释成input(Text)控件支持onkeyup属性
    onkeyup:当光标在文本框中时,键盘中按键弹起时会触发
    onkeyup="sp.innerText = this.value.length+tb1.value.length;"
     
    6、默认焦点
    <from>表单的defaultfocus属性设置Web窗体的默认焦点控件
    defaultbutton属性设置Web窗体的默认按钮,输入控件中按Enter键触发click事件
     
    7、VewState视图状态
    int[] num ={2,4,6,8};
    ViewState["num"]=num;
    int[] temp = ViewState["num"] as int[];
    视图状态适合应用于存储数据较少的场合
     
    8、隐藏域HiddenField 在浏览器中不可见
     
    9、超链接
    LinkButton控件先将请求回传至服务器端,再由服务器端传到目标网页
    HyperLink控件则不经过服务器端直接跳转到目标网页
     
    10、热键
    Label控件的AccessKey属性设置热键
    AssociatedControlID属性设置获得焦点的控件
    <asp:Label ID = "lbUserName" runat="server"
    AccessKey = "U" AssociatedControlID = "tbUserName" Text="热键ALT+U"></ASP:Label>
    TextBox也可以使用AccessKey属性

    2016.4.18
    WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping。

    解决办法如下:

    1、添加Global.asax文件

    2、如果在本地有JQuery的源代码,可以在Application_Start中添加如下代码:

    1 ScriptManager.ScriptResourceMapping.AddDefinition("jquery", newScriptResourceDefinition
    2 {
    3     Path = "~/js/jQuery/jquery-1.9.1.js"
    4 });
     如果在本地没有JQuery的源代码,可以在Application_Start中添加如下代码:
    1 ScriptManager.ScriptResourceMapping.AddDefinition("jquery", newScriptResourceDefinition
    2 {
    3     Path = "~/scripts/jquery-1.7.2.min.js",
    4     DebugPath = "~/scripts/jquery-1.7.2.js",
    5     CdnPath = "http://ajax.microsoft.com/ajax/jQuery/jquery-1.7.2.min.js",
    6     CdnDebugPath = "http://ajax.microsoft.com/ajax/jQuery/jquery-1.7.2.js"
    7 });
    1、Literal 在网页中保留静态文本的位置
    Literal l1 = new Literal();
    l1.Text = "&nbsp;";
     
    2、动态添加控件
    Page.Controls.Add(tb1);//在页面上添加
    PlaceHolder1.Controls.Add(btn2);//在容器控件上添加
     
    3、提交表单时返回确认对话框
    string Text = "return confirm('是否确认提交?')";       
    ClientScript.RegisterOnSubmitStatement(this.GetType(), "ConfirmSubmit", Text);
     
    4、PostBackUrl属性实现页面传值
    <asp:Button ID="btnSave" runat="server" Text="跳转" PostBackUrl="~/Target.aspx" />
    跳转到的页面:
    string temp = (this.PreviousPage.FindControl("tb1") as TextBox).Text;
    Response.Write(temp);
     
    5、ValidationSummary控件
    <asp:ValidationSummary ID="vs1" runat="server" HeaderText="错误信息:" DisplayMode="BulletList"  ShowMessageBox="True" ShowModelStateErrors="False" />

    2016.4.20
    连接字符串:
     
    1 <connectionStrings>
    2       <add name="ConnectionString" connectionString="data source=.;initial catalog=db_Tome1;integrated security=True;" providerName="System.Data.SqlClient" />
    3   </connectionStrings>
    连接数据库:
     1  string strCon = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
     2             string strsql = "SELECT 产品编号, 单价, 库存量, 已订购量, 订单日期,单价 * 已订购量 AS 订货金额 FROM tb_OrderForm";
     3             SqlConnection myConn = new SqlConnection(strCon);
     4             if (myConn.State.Equals(ConnectionState.Closed))
     5                 myConn.Open();
     6             SqlDataAdapter da = new SqlDataAdapter(strsql, strCon);
     7             DataSet ds = new DataSet();
     8             da.Fill(ds);
     9             GridView1.DataSource = ds;
    10             GridView1.DataBind();
    11             myConn.Close();
    GridView控件换行操作:
     1  protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
     2         {
     3             // 提取当前的数据行。
     4             GridViewRow row = e.Row;
     5             // 如果正被创建的数据行是一个脚注,则更新数据列加总。
     6             if (row.RowType == DataControlRowType.Footer)
     7             {
     8                 // 取得脚注当中的标签控件 OrderTotalTotal 。
     9                 Label total = (Label)(e.Row.FindControl("OrderTotalLabel"));
    10 
    11                 // 以货币格式来显示订货金额加总。
    12                 if (total != null)
    13                 {
    14                     total.Text = orderTotal.ToString("c");
    15                 }
    16             }
    17         }
    18         protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    19         {
    20             if (e.Row.RowType == DataControlRowType.DataRow)
    21             {
    22                 decimal totalMoney =
    23                    Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "订货金额"));
    24                 //累加订货金额并赋给变量 orderTotal。
    25                 orderTotal += totalMoney;
    26             }
    27         }
    28         protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    29         {
    30             GridView1.PageIndex = e.NewPageIndex;
    31             GridView1.DataBind();
    32             DbBind();
    33         }
  • 相关阅读:
    Redis学习(一)认识并安装redis
    并发编程(七)线程如何优雅地终止
    并发编程(六)Object类中线程相关的方法详解
    并发编程(五)线程同步
    并发编程(四)Thread类详解
    并发编程(三)线程池
    并发编程(二)Java中的多线程
    Python学习————作业
    Python学习————作业(面向对象)
    Python学习————面向对象和面向过程
  • 原文地址:https://www.cnblogs.com/xingye3327/p/5414144.html
Copyright © 2020-2023  润新知