webform的简单控件
1.Label:文本显示,编译后是span
属性:颜色,样式,边线宽度
2.Literal:纯文本显示,编译后是text
3.TextBox:文本框
TextMode-密码框、文本域
Warp-自动换行
Enabled-设置不可用
ReadOnly-设置不可操作
MaxLength-最大的字符长度
Visible-可见性
4.Button:按钮
属性:OnClientClick-客户端点击(conform)
5.ImageButton:图片按钮
ImageUrl-图片引用(App_Code的文件夹)
6.LinkButton:超链接
-------------------------------
复合控件:
DropDownList
一、将数据放进去
1、DataSource
2、Foreach
二、将数据取出来
1、读取一条数据
取出value值 -
取出Text值 -
ListBox
可以多选 - SelectionMode
2、读取多条选中的数据
===================================
webform 与数据库的链接
没有命名空间;
Default.aspx.cs界面代码:
protected void Page_Load(object sender, EventArgs e)
{
Button1.Click += Button1_Click;//登陆按钮
}
void Button1_Click(object sender, EventArgs e)
{
//先把用户名密码取出来
string Uname = TextBox1.Text;
string Pwd = TextBox2.Text;
bool isok = new UsersData().Select(Uname, Pwd);
if (isok)
Literal1.Text="登陆成功!";
else
Literal1.Text = "用户名密码错误!";
}
}
-------------------------------------
实体类代码:
public Users()
{
}
private string _UserName;
/// <summary>
/// 用户名
/// </summary>
public string UserName
{
get { return _UserName; }
set { _UserName = value; }
}
private string _PassWord;
/// <summary>
/// 密码
/// </summary>
public string PassWord
{
get { return _PassWord; }
set { _PassWord = value; }
}
private string _NickName;
/// <summary>
/// 昵称
/// </summary>
public string NickName
{
get { return _NickName; }
set { _NickName = value; }
}
private bool _Sex;
/// <summary>
/// 性别
/// </summary>
public bool Sex
{
get { return _Sex; }
set { _Sex = value; }
}
private DateTime _Birthday;
/// <summary>
/// 生日
/// </summary>
public DateTime Birthday
{
get { return _Birthday; }
set { _Birthday = value; }
}
private string _Nation;
/// <summary>
/// 民族
/// </summary>
public string Nation
{
get { return _Nation; }
set { _Nation = value; }
}
-------------------------------------
操作类的代码:
SqlConnection conn = null;
SqlCommand cmd = null;
public UsersData()
{
conn = new SqlConnection("server=.;database=Data0617;user=sa;pwd=123");
cmd = conn.CreateCommand();
}
/// <summary>
/// 用户验证
/// </summary>
/// <param name="Uname">验证的用户名</param>
/// <param name="Pwd">验证的密码</param>
/// <returns></returns>
public bool Select(string Uname, string Pwd)
{
bool has = false;
cmd.CommandText = "select *from Users where UserName =@a and PassWord=@b";
cmd.Parameters.Clear();
cmd.Parameters.Add("@a", Uname);
cmd.Parameters.Add("@b", Pwd);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
has = true;
}
conn.Close();
return has;
}
http协议无状态性:
每一次事件提交,都会将页面刷新,刷新就必走Load事件,重复绑定的情况
判断页面是第一次加载,还是由已经加载出来的页面中的某个按钮执行了提交返回回来的
if (!IsPostBack)
load事件中95%的代码都要写在这里面