VSNET开发中的小技巧.docx

上传人:b****5 文档编号:5800647 上传时间:2023-01-01 格式:DOCX 页数:38 大小:32.49KB
下载 相关 举报
VSNET开发中的小技巧.docx_第1页
第1页 / 共38页
VSNET开发中的小技巧.docx_第2页
第2页 / 共38页
VSNET开发中的小技巧.docx_第3页
第3页 / 共38页
VSNET开发中的小技巧.docx_第4页
第4页 / 共38页
VSNET开发中的小技巧.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

VSNET开发中的小技巧.docx

《VSNET开发中的小技巧.docx》由会员分享,可在线阅读,更多相关《VSNET开发中的小技巧.docx(38页珍藏版)》请在冰豆网上搜索。

VSNET开发中的小技巧.docx

VSNET开发中的小技巧

VS.NET开发中的小技巧

 

技巧:

图片使网站丰富起来,但有的时候不是所有图片都能正常显示的。

这个时候会出现一个或多个红叉叉,这个技巧是告诉你如何处理的。

在DataGrid和GridView中对表头设定背景图片

privatevoidDataGrid1_ItemDataBound(objectsender,System.Web.UI.WebControls.DataGridItemEventArgse)

{

if(e.Item.ItemType==System.Web.UI.WebControls.ListItemType.Header)

{

e.Item.Attributes.Add("style","background-image:

url('background.gif')");

}

}

GridView:

protectedvoidGridView1_RowDataBound(objectsender,GridViewRowEventArgse)

{

if(e.Row.RowType==DataControlRowType.Header)

{

e.Row.Attributes.Add("style","background-image:

url('background.gif')");

}

}

在DataGrid和GridView中对表头设定背景图片,不需要后台代码。

GridViewrunat="server"ID="gvStatList"AllowPaging="false"Width="100%"CssClass="grid"

AutoGenerateColumns="false"Visible="true"ShowFooter="false">

GridView>

.grid-head{

font-size:

14px;

font-weight:

normal;

color:

#FFFFFF;

background-image:

url(../images/grid-bg.gif);

text-align:

center;

vertical-align:

middle;

height:

28px;

}

互斥对象.很多情况下存在互斥对象,我通常这么处理

boolshowObject

...{

set...{

TextBox1.Visible=value;

TextBox2.Visible=!

value;

}

}

可以实现动态图片显示

<%=str%>

后台代码

变量

变量=@

foreach(DataRowdr_ChildindsResult1.Tables[0].Rows)

{

if(!

Convert.ToBoolean(dr_Child["FLAG"]))

{

msiChild.sFontColor="FontRed";

msiChild.BM=@""+msiChild.BM;

}

elseif(Convert.ToBoolean(dr_Child["FLAG"]))

{

msiChild.BM=@""+msiChild.BM;

}

str+=msiChild.BM;

}

returnstr;

@""+@"
"

数据显示时

XXXXXXXXXXXXXX

XXXX

XXXX

XXXXXXXXXXXXXX

XXXXXXXXXXXXXX

XXXXXXXXXXXXXX

XXXX

XXXX

一列显示多条不同的数据

在改改就可以实现动态图片按扭并且每个按扭可以传不同的值出去

sBM+=i["name"].ToString()+@"";

这样+JS代码就是动态图片按扭

Asp.Net2.0中我们可以方便的访问配置文件中,.NetFrameWork2.0新增加了SystemWebSectionGroup类。

允许用户以编程方式访问配置文件的system.web组。

比如判断web.config内是否为debug="true",或者判断身份验证形式

SystemWebSectionGroupws=newSystemWebSectionGroup();

CompilationSectioncp=ws.Compilation;

用cp.Debug;就可以得到compilation节内关于"debug"的配置

AuthenticationSectionas=ws.Authentication;

用as.Mode可以获取authentication节中关于"mode"的配置,值为AuthenticationMode枚举之一

AuthenticationMode的取值如下:

成员名称说明

Forms将基于ASP.NET窗体的身份验证指定为身份验证模式。

None不指定身份验证。

Passport将MicrosoftPassport指定为身份验证模式。

Windows将Windows指定为身份验证模式。

在使用Internet信息服务(IIS)身份验证方法(基本、简要、集成Windows(NTLM/Kerberos)或证书)时适用此模式。

附:

SystemWebSectionGroup类的公共属性:

名称说明

AnonymousIdentification获取anonymousIdentification节。

Authentication获取authentication节。

Authorization获取authorization节。

BrowserCaps获取browserCaps节。

ClientTarget获取clientTarget节。

Compilation获取compilation节。

CustomErrors获取customErrors节。

Deployment获取deployment节。

DeviceFilters获取deviceFilters节。

Globalization获取globalization节。

HealthMonitoring获取healthMonitoring节。

HostingEnvironment获取hostingEnvironment节。

HttpCookies获取httpCookies节。

HttpHandlers获取httpHandlers节。

HttpModules获取httpModules节。

HttpRuntime获取httpRuntime节。

Identity获取identity节。

IsDeclarationRequired获取一个值,该值指示是否需要声明此ConfigurationSectionGroup对象。

(从ConfigurationSectionGroup继承。

IsDeclared获取一个值,该值指示是否已声明此ConfigurationSectionGroup对象。

(从ConfigurationSectionGroup继承。

MachineKey获取machineKey节。

Membership获取membership节。

MobileControls获取mobileControls节。

Name获取此ConfigurationSectionGroup对象的名称属性。

(从ConfigurationSectionGroup继承。

Pages获取pages节。

ProcessModel获取processModel节。

Profile获取profile节。

Protocols获取protocols节。

RoleManager获取roleManager节。

SectionGroupName获取与此ConfigurationSectionGroup关联的节组名称。

(从ConfigurationSectionGroup继承。

SectionGroups获取一个包含所有ConfigurationSectionGroup对象的ConfigurationSectionGroup对象,这些对象是此ConfigurationSectionGroup对象的子对象。

(从ConfigurationSectionGroup继承。

Sections获取一个ConfigurationSectionCollection,它包含此ConfigurationSectionGroup中的所有ConfigurationSection对象。

(从ConfigurationSectionGroup继承。

SecurityPolicy获取securityPolicy节。

SessionState获取sessionState节。

SiteMap获取siteMap节。

Trace获取trace节。

Trust获取trust节。

Type获取或设置此ConfigurationSectionGroup对象的类型。

(从ConfigurationSectionGroup继承。

UrlMappings获取urlMappings节。

WebControls获取webControls节。

WebParts获取webParts节。

WebServices获取webServices节。

XhtmlConformance获取xhtmlConformance节。

========================================

C#code

///

///显示消息提示对话框,并进行页面跳转

///

///当前页面指针,一般为this

///提示信息

///跳转的目标URL

publicstaticvoidShowAndRedirect(System.Web.UI.Pagepage,stringmsg,stringurl)

{

StringBuilderBuilder=newStringBuilder();

Builder.Append("");

Builder.AppendFormat("alert('{0}');",msg);

Builder.AppendFormat("top.location.href='{0}'",url);

Builder.Append("");

//page.RegisterStartupScript("message",Builder.ToString());

page.ClientScript.RegisterStartupScript(page.GetType(),"message",Builder.ToString());

}

=====================================

假设这样一种模型,显示用GridView,数据源用DataSet。

每次获取10条信息,按每页10条分页。

有的时候数据可能不足10条,而客户要求不足10条显示为空行,以下代码解决了这个问题。

C#code

privateDataTableFillBlank(intpageSize,DataTabledt)

{

if(dt.Rows.Count

{

for(inti=dt.Rows.Count-1;i

{

DataRowdr=dt.NewRow();

dt.Rows.Add(dr);

}

}

returndt;

}

privatevoidBindGrid(DataTabledt)

{

GridView.DataSource=dt;

GridView.DataBind();

}

===============================================

给大家一个很[color=#008000]COOL的例子吧。

有的时候我们想把网页动起来,我们希望页面上的某些元素可以移动,称之为拖拽。

[/color]

原创

HTMLcode

<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="Drag.aspx.cs"Inherits="Test.Drag"%>

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

//www.w3.org/1999/xhtml">

UntitledPage

//为Number增加一个属性,判断当前数据类型是否是数字

Number.prototype.NaN0=function(){returnisNaN(this)?

0:

this;}

//全局变量

variMouseDown=false;

vardragObject=null;

//获得鼠标的偏移量(对象2-对象1)

functiongetMouseOffset(target,ev)

{

ev=ev||window.event;

vardocPos=getPosition(target);

varmousePos=mouseCoords(ev);

return{x:

mousePos.x-docPos.x,y:

mousePos.y-docPos.y};

}

//获得事件发生的实际位置----------------------对象1

functiongetPosition(e)

{

varleft=0;

vartop=0;

//相对位置累加得到实际位置

while(e.offsetParent)

{

left+=e.offsetLeft+(e.currentStyle?

(parseInt(e.currentStyle.borderLeftWidth)).NaN0():

0);

top+=e.offsetTop+(e.currentStyle?

(parseInt(e.currentStyle.borderTopWidth)).NaN0():

0);

e=e.offsetParent;

}

left+=e.offsetLeft+(e.currentStyle?

(parseInt(e.currentStyle.borderLeftWidth)).NaN0():

0);

top+=e.offsetTop+(e.currentStyle?

(parseInt(e.currentStyle.borderTopWidth)).NaN0():

0);

return{x:

left,y:

top};

}

//获得发生事件鼠标的位置----------------------对象2

functionmouseCoords(ev)

{

if(ev.pageX||ev.pageY)

{

return{x:

ev.pageX,y:

ev.pageY};

}

return{x:

ev.clientX+document.body.scrollLeft-document.body.clientLeft,y:

ev.clientY+document.body.scrollTop-document.body.clientTop};

}

//定义可以拖拽的对象

functionmakeDragable(item)

{

if(!

item)return;

//为可拖拽对象定义一个onmousedown事件的方法

ev=window.event;

item.onmousedown=function(ev)

{

dragObject=this;

mouseOffset=getMouseOffset(this,ev);

returnfalse;

}

}

//定义鼠标点下所调用的方法

functionmouseDown(ev)

{

ev=ev||window.event;

vartarget=ev.target||ev.srcElement;

if(target.onmousedown||target.getAttribute('DragObj'))

{

returnfalse;

}

}

//鼠标抬起后释放对象

functionmouseUp(ev)

{

dragObject=null;

//onmouseup事件触发时说明鼠标已经松开,所以设置down变量值为false

iMouseDown=false;

}

//鼠标移动

functionmouseMove(ev)

{

ev=ev||window.event;

vartarget=ev.target||ev.srcElement;

varmousePos=mouseCoords(ev);

if(dragObject)

{

if(dragObject.style)

{

//移动对象

dragObject.style.left=mousePos.x-mouseOffset.x;

dragObject.style.top=mousePos.y-mouseOffset.y;

}

}

//lMouseState=iMouseDown;

if(dragObject)returnfalse;

}

document.onmousedown=mouseDown;

document.onmousemove=mouseMove;

document.onmouseup=mouseUp;

functionmoveImg()

{

varimg1=document.getElementById('img1');

makeDragable(img1);

}

absolute;left:

0px;top:

0px;"/>

=============================================================

document.getElementById('image').src=this.value"/>

这样在选中要上传的图片时,就可以看见自己要上传的了

==========================================

================================

HTMLcode

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="20_解决刷新后回到顶部的问题.aspx.cs"Inherits="_20_解决刷新后回到顶部的问题"MaintainScrollPositionOnPostback="true"%>

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

//www.w3.org/1999/xhtml">

无标题页

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

啊啊

展开阅读全文
相关搜索

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1