2007-01-16
TAG:.net

在提交的时候过程很长,为了防止用户再次点击而且为了界面友好可以用一个层遮住所有按钮再显示个提示信息,等服务器端处理完成再导航到本页(location.href='地址')就可以:


pageload里面这么写:this.Button1.Attributes.Add("onclick","document.getElementById('doing').style.visibility='visible';");
,等操作结束重定向了后页面重新加载一次,这个层也就消失了。。。


Page.SmartNavigation 属性
获取或设置指示是否启用智能导航的值


如果启用智能导航,则为 true;否则为 false。

备注
在大多数情况下不要在代码中设置该属性。在 .aspx 文件的 @ Page 指令中将 SmartNavigation 属性设置为 true。请求该页时,动态生成的类将设置该属性。

Internet Explorer 5.5 或更高版本浏览器请求页时(或稍后),智能导航将通过执行下列功能提高用户对该页的操作能力:

消除导航导致的闪烁。
从一页移动到另一页时保持滚动位置。
保持导航之间的元素焦点。
在浏览器的历史记录中只保留最后一页的状态。
智能导航最适用于需要频繁回发但是其可是内容在返回时不会发生显著更改的 ASP.NET 页。在决定是否将该属性设置为 true 时,请仔细考虑这一点。


[C#]
void Page_Load(Object sender, EventArgs e)
{
   this.SmartNavigation = true;
}
void Button_Click(Object sender, EventArgs e)
{
   Label1.Text="The value of 'SmartNavigation' property is " + "'" + this.SmartNavigation + "'";
}

它最外边还是有一个frameset。你可以注意到与ajax的区别就是窗口底下多了个一闪而过的蓝色进度条(我真希望ie能有办法去掉这个)。其实很简单,几秒钟搞定!就是把你的页面的属性 smartNavigation 设置为 true
1遇到的问题:
使用了验证控件,编译时提示“无法找到脚本库……”
解决方法:
由于更换了主目录路径,应将在wwwroot下的aspnet_client文件夹拷到新的目录下即可


 

2遇到的问题:
关于style中的alpha滤镜
解决方法:
滤镜说明:
Alpha:设置透明层次.
滤镜:alpha
语法:
STYLE="filter:Alpha(Opacity=opacity,FinishOpacity=finishopacity,Style=style,StartX=startX,StartY=startY,FinishX=finishX,FinishY=finishY)"
说明:
Opacity:起始值,取值为0-100,0为透明,100为原图.

FinishOpacity:目标值.

Style:1或2或3

StartX:任意值

StartY:任意值

例子1:filter:Alpha(Opacity="0",FinishOpacity="40",Style="2")

例子2:

(即半透明)

附常见滤镜:

style的css设置 2005-5-5 11:54:18

语法:STYLE="filter:filtername(fparameter1,fparameter2...)}(Filtername为滤镜的名称,fparameter1、fparameter2等是滤镜的参数)

 

滤镜说明:

Alpha:设置透明层次.

blur:创建高速度移动效果,即模糊效果.

Chroma:制作专用颜色透明.

DropShadow:创建对象的固定影子.

FlipH:创建水平镜像图片.

FlipV:创建垂直镜像图片.

glow:加光辉在附近对象的边外.

gray:把图片灰度化.

invert:反色.

light:创建光源在对象上.

mask:创建透明掩膜在对象上.

shadow:创建偏移固定影子.

wave:波纹效果.

Xray:使对象变的像被x光照射一样.

 

1.滤镜:alpha

语法:

STYLE="filter:Alpha(Opacity=opacity,FinishOpacity=finishopacity,Style=style,

StartX=startX,StartY=startY,FinishX=finishX,FinishY=finishY)"

说明:

Opacity:起始值,取值为0-100,0为透明,100为原图.

FinishOpacity:目标值.

Style:1或2或3

StartX:任 ?

StartY:任意值

例子:filter:Alpha(Opacity="0",FinishOpacity="40",Style="2")

 

2.滤镜:blur

语法:

STYLE="filter:Blur(Add=add,Direction=direction,Strength=strength)"

说明:

Add:一般为1,或0.

Direction:角度,0-315度,步长为45度.

Strength:效果增长的数值,一般5即可.

例子:filter:Blur(Add="1",Direction="45",Strength="5")

 

3.滤镜:chroma

语法:

STYLE="filter:Chroma(Color=color)"

说明:

color:#rrggbb格式,任意.

例子:filter:Chroma(Color="#FFFFFF")

 

4.滤镜:DropShadow

语法:

STYLE="filter:DropShadow(Color=color,OffX=offX,OffY=offY,Positive=positive)"

说明:

Color:#rrggbb格式,任意.

Offx:X轴偏离值.

Offy:Y轴偏离值.

Positive:1或0.

例子:filter:DropShadow(Color="#6699CC",OffX="5",OffY="5",Positive="1")

 

5.滤镜:FlipH

语法:

STYLE="filter:FlipH"

例子:filter:FlipH

 

6.滤镜:FlipV

语法:

STYLE="filter:FlipV"

例子:filter:FlipV

 

7.滤镜:Glow

语法:

STYLE="filter:Glow(Color=color,Strength=strength)"

说明:

Color:发光颜色.

Strength:强度(0-100)

例子:filter:Glow(Color="#6699CC",Strength="5")

 

8滤镜:Gray

语法:

STYLE="filter:Gray"

例子:filter:Gray

 

9.滤镜:Invert

语法:

STYLE="filter:Invert"

例子:filter:Invert

 

10.滤镜:Mask

语法:

STYLE="filter:Mask(Color=color)"

例子:filter:Mask(Color="#FFFFE0")

 

11.滤镜:Shadow

语法:

filter:Shadow(Color=color,Direction=direction)

说明:

Color:#rrggbb格式.

Direction:角度,0-315度,步长为45度.

例子:filter:Shadow(Color="#6699CC",Direction="135")

 

12.滤镜:Wave

语法:

filter:Wave(Add=add,Freq=freq,LightStrength=strength,Phase=phase,Strength=strength)

说明:

Add:一般为1,或0.

Freq:变形值.

LightStrength:变形百分比.

Phase:角度变形百分比.

Strength:变形强度.

例子:filter:wave(Add="0",Phase="4",Freq="5",LightStrength="5",Strength="2")

 

13.滤镜:Xray

语法:

STYLE="filter:Xray"

例子:filter:Xray 


 

3遇到的问题:

关于ArrayList、Ienumerator?

解决方法:

ArrayList a=new ArrayList();

              string s1="aaaaa";

              string s2="bbbbb";

              string s3="ccccc";

              int i1=1;

              int i2=2;

              int i3=3;

 

              a.Add(s1);

              a.Add(s2);

              a.Add(i1);

              a.Add(i2);   

              a.Add(i3);

              a.Add(s3);

 

              IEnumerator ie=a.GetEnumerator();

              while(ie.MoveNext())

              {

                   string s=ie.Current.ToString();

                   Response.Write(s+Environment.NewLine);

              }

(与直接对arraylist对象用下标访问或通过foreach访问有什么区别?)


 

4遇到的问题:

关于arraylist

解决方法:

一. ArrayList 构造函数

 

1. public ArrayList(); 

    初始容量是新ArrayList的起始容量。ArrayList 的默认初始容量为16。 如果添加到列表中的元素个数达到当前容量,则容量将自动增加一倍。

 

2. public ArrayList(ICollection);

    初始容量是新ArrayList 的起始容量。如果添加到列表中的元素个数达到当前容量,则容量将自动增加一倍。按照由ICollection 的IEnumerator 读取元素的顺序将这些元素复制到ArrayList 中。

 

3. public ArrayList(int);

    初始容量是新ArrayList 的起始容量。ArrayList 的默认初始容量为16。如果指定的初始容量为0,则使用默认的初始容量。如果添加到列表中的元素个数达到当前容量,则容量将自动增加一倍。因此,如果可以估计集合的大小,那么当指定初始容量后,将无需在向ArrayList 中添加元素时执行大量的大小调整操作。

 

二. ArrayList 成员

 

1. 常用属性

Capacity:获取或设置ArrayList 可包含的元素数。

Count:获取 ArrayList中实际包含的元素数。

Item:获取或设置指定索引处的元素。在 C# 中,该属性为ArrayList类的索引器。

 

2.常用方法

Add:将对象添加到ArrayList的结尾处。

Clear:从ArrayList 中移除所有元素。

IndexOf:返回ArrayList 或它的一部分中某个值的第一个匹配项的从零开始的索引。

LastIndexOf:返回ArrayList或它的一部分中某个值的最后一个匹配项的从零开始的索引。

Insert:将元素插入ArrayList的指定索引处。

Remove:从ArrayList中移除特定对象的第一个匹配项。

RemoveAt:移除ArrayList的指定索引处的元素。

TrimToSize:将容量设置为ArrayList中元素的实际数量。


 

5遇到的问题:

关于动态修改html中的某些内容

解决方法:

例如,改变页面的title

1)

                  

.cs中:

              string s="123456";

              Response.Write("");

 

2)

                  

.cs中:

         public string s="123456";

使用protected修饰也行,但internal修饰则出错,???

 

3)

                  

.cs中:

         public string Method()

         {

              return "123456";

         }

同二,使用internal修饰也不行???


 

6遇到的问题:

关于params关键字

解决方法:

         private void Page_Load(object sender, System.EventArgs e)

         {

              // 在此处放置用户代码以初始化页面

              string[] sArray=new string[3];

              sArray[0]="aaa";

              sArray[1]="bbb";

              sArray[2]="ccc";

 

              Method1(sArray);

//            Method1("aaa","bbb","ccc");      //error

 

              Method2(sArray);

              Method2("aaa","bbb","ccc");

 

         }

 

         private void Method1(string[] s)

         {

              string temp="";

              foreach(string e in s)

              {

                   temp+=e;

              }

              this.TextBox1.Text =temp;

         }

 

         private void Method2(params string[] s)

         {

              string temp="";

              foreach(string e in s)

              {

                   temp+=e;

              }

              this.TextBox2.Text =temp;

         }


 

7遇到的问题:

关于__doPostBack()方法?

解决方法:

页面一:

提供一个锚点:

open webform2

一个文本框,用于显示一些信息:

一个隐藏的服务器button:






坯子 @ 15:00:10 | 引用 0 | 编辑



评论
 
徐嘉 () @ 2007-01-19 06:12:56
:-) 貌似你的博客那张黑色的图片上的英语有点语法错误哦。 “What are you doing today?”好像doing和today不是一个语态环境吧?好像应该是“What have you done today?”

呵呵 仅供参考



发表评论
 姓名: 
 E-mail: 
 地址: