- 浏览: 99467 次
- 性别:
- 来自: 合肥
最新评论
-
helloqidi:
谢谢,学习了。
娃娃鸭学Ruby-34、可枚举的对象
文章列表
创建用户控件
简单例子:
RandomImage.ascx
<%@ Control Language="C#" ClassName="RandomImage" %>
<%@ Import Namespace="System.IO" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
...
创建全局主题
可以在一个Web服务器端上的多个程序之间共享同一个主题。全局主题包括皮肤文件和CSS文件。
创建全局主题的方法是将主题文件夹保存在以下路径:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Asp.NetCLientFiles\Themes
不过在我的机器上没找到该文件夹
在主题中添加CSS
如果在主题文件夹中添加CSS文件,则在页面应用主题时也会自动应用CSS。
SimpleStyle\SimpleSheet.css
html {
background-color:Gray;
font:14px Georgia,Serif;
}
.content
{
margin:auto;
width:600px;
border:solid 1px black;
background-color:White;
padding:10px;
}
h1
{
color:Gray ...
在主题中添加皮肤
一个主题可以包含一个或多个皮肤文件。可以通过皮肤来修改所有具有皮肤效果的ASP.net控件的属性
在Web应用程序中所有的TextBox控件的背景设为黄色,dotted 为边框样式
Simple\TextBox.skin
<asp:TextBox BackColor="Yellow" BorderStyle="Dotted" Runat="Server"/>
建议:
皮肤文件名和待修改的控件名称一样,再加上皮肤的扩展名即可。
<%@ Page Language="C#" ...
创建主题
在名为App_Themes的应用程序的文件夹中新增文件夹就可以创建主题
主题文件夹中比较重要的文件类型是:
皮肤文件
CSS文件
注意:
要注意主题的命名方式(文件夹名)
主题文件夹的内容会自动在后台编译成新的类,所以要注意主题的名称不要和项目中已有的其他类名产生冲突。
2011-4-28 11:34 danny
动态加载母版页
应用场合:
1)通过加载不同的母版页可以让网站用户自定义外观
2)品牌联合 需要自己的网站与合作伙伴的网站外观相同,以使用户从伙伴公司的网站转到自己的网站时,不会感到被链接到了不同的网站,则可通过从伙伴公司的网站传递过来的查询字符串来动态加载不同的母版页。
页面执行的生命周期中,首先进行的就是母版页和内容页的合并。
加载母版页的事件是PreInit
protected void Page_PreInit(object sender,EventArgs e)
{
if(Request["master"]!=null)
{
switch(Reque ...
修改母版页内容
1、使用Title属性
<%@Page Language="c#" MasterPageFile="~/SimpleMaster.master" Title="Content Page File" %>
....
2、使用Page Header属性
如果需要通过编程方式修改母版页的页标题或CSS规则,可以使用Page.Header属性,返回一个实现IPageHeader接口的对象。
具有以下属性
StyleSheet
Title
<%@ Page Title="& ...
自定义的迭代器
可调用一个与方法调用相关联的代码块
def twice
yield
yield
end
def sequence(n,m,c)
i=0
while(i<n)
yield m*i +c
i+=1
end
end
sequence(3,5,1){|y| puts y}
irb(main):008:0> sequence(3,5,1){|y| puts y}
1
6
11
=> nil
更复杂代码,
迭代器内部使用另一迭代器
def circle(r,n)
n.times do |i|
angle=Math::PI ...
创建母版本页
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="SimpleMaster.master.cs"
Inherits="SimpleMaster" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional ...
上传大文件
上传大文件,需要做些处理
处理大文件时,需要使用多个可托管(manageable)内存块来处理文件。
httpRuntime maxRequestLength 指定提交的表单能被服务器端接收的最大值
httpRuntime requestLengthDiskThreshold 如何把上传表单缓存在文件系统
<configuration>
<system.web>
<httpRuntime maxRequestLength="10240" requestLengthDiskThreshold="100&q ...
2、文件保存到数据库
上传
<%@ Page Language="C#" %>
<%@ Import Namespace="System.IO" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server"&g ...
2、文件保存到数据库
上传
<%@ Page Language="C#" %>
<%@ Import Namespace="System.IO" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
...
接收上传文件
FileUpload 控件属性
Enabled -用于禁用FileUpload控件
FileBytes 以字节数组(byte array)形式获取上传文件内容
FileContent 以流(stream)形式
FileName 获得上传文件的名字
HasFile 有上传文件时返回true
PostedFile 用于获得包装成HttpPostedFile对象的上传文件
方法
Focus 用于把窗体的焦点转移到FileUpload控件
SaveAs 保存到文件系统
HttpPostedFile类属性
ContentLength 上传文件的字节大小
ContentType ...
创建自定义验证控件
BaseValidator类
抽象类
必须实现一方法:
EvaluateIsValid 当被检验的表单字段通过验证时返回True
GetControlValidationValue 用于获取被验证的控件的值
创建自定义验证控件时,要重写EvaluateIsValid()方法,并在EvaluateIsValid()方法中调用GetControlValidationValue来获得被验证的表单字段的值。
2011-4-26 16:15 danny
1、创建LengthValidator控件
P128
使用ValidationSummary控件
在页面中的一处地方显示所有验证错误的列表
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>
<html ...