一。发送电子邮件

用的dll是微软自带的,觉得挺好用的!!

 public class SimpleEmailHelper{private string _SmtpAdd;private string _UserID;private string _UserPsw;public SimpleEmailHelper(string smtpAddress, string userID, string userPsw){_SmtpAdd = smtpAddress;_UserID = userID;_UserPsw = userPsw;}public bool Send(string from, string to, string subject, string message,string cc){return Send(from, from, to, to, subject, message,cc);}public bool Send(string from, string fromDisplay, string sendTo, string sendToDisplay,string subject, string message,string cc){bool ret = true;SmtpClient client = new SmtpClient();client.Host = _SmtpAdd;//邮件服务器 比如 网易的是 smtp.163.COMclient.Port = 25;//端口号,也可不写client.DeliveryMethod = SmtpDeliveryMethod.Network;//发送方式client.Credentials = new NetworkCredential(_UserID, _UserPsw);//用户名和密码MailMessage myMessage = new MailMessage();myMessage.Priority = MailPriority.Normal;//优先级myMessage.From = new MailAddress(from, fromDisplay, Encoding.GetEncoding("gb2312"));myMessage.To.Add(sendTo);if (cc != ""){myMessage.CC.Add(cc);}myMessage.Subject = subject;//邮件主题myMessage.SubjectEncoding = Encoding.GetEncoding("gb2312");myMessage.IsBodyHtml = true;myMessage.BodyEncoding = Encoding.GetEncoding("gb2312");myMessage.Body = message;//正文myMessage.Attachments.Add(new Attachment(@"C:\Users\lando\Desktop\Flex问题集结号.txt"));//加入附件。。。client.Send(myMessage);//开始发送。return ret;}}

页面调用:

SQ.FrameWork.SimpleEmailHelper emailHelper = new SQ.FrameWork.SimpleEmailHelper(stmpServerIpAddress, userId, psw);
emailHelper.Send(from, distEmailAddress, TextBoxTopic.Text.Trim(),TextBoxContent.Text.Trim(),txtCCCleint.Text);
ShowMessage("邮件发送成功。");

需要注意一下的是:

stmpServerIpAddress:是收邮件的服务器地址,比如我用网易的,那么就是 smtp.163.com  等等
userId:你发电子邮件的用户名
psw:你发电子邮件的密码
from:发送人姓名
distEmailAddress:收件人列表,可以有多个,用逗号分隔开来。。都很好理解!~。

二。下载word文档

这个很常用吧,这是我刚刚在给一个实习生改毕业论文的时候,遇到的,所以就记下来了!~以飨园友们哦!~。

 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e){string courseName = ((Label)GridView1.Rows[e.RowIndex].Cells[1].FindControl("Label1")).Text.ToString();//在GridView中文件名字string time = ((Label)GridView1.Rows[e.RowIndex].Cells[2].FindControl("Label2")).Text.ToString();//在GridView中找时间string tempPath = BusyworkManage.Path + tm.ReturnTeacherID(Request.Cookies["StudentID"].Value.ToString()) +BusyworkManage.TopicPath + courseName + "/" + courseName + "_" + time + ".doc";//这样做是为了不使下载后的文件的名字重复!~~。string path = Server.MapPath(tempPath);FileInfo fInfo = new FileInfo(path);string fname = fInfo.Name;Response.Clear();Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fname));Response.AddHeader("Content-Length", fInfo.Length.ToString());Response.ContentType = "application/octet-stream";Response.WriteFile(fInfo.FullName);Response.Flush();

首先需要说明的是,在gridview控件中放一个button 按钮,如下:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Height="139px"        Width="100%" OnRowDeleting="GridView1_RowDeleting"             onselectedindexchanged="GridView1_SelectedIndexChanged">        <Columns>        。。。。。。省略代码。。。。。            <asp:BoundField DataField="成绩" HeaderText="成绩">                <ItemStyle HorizontalAlign="Center" />            </asp:BoundField>            <asp:CommandField ButtonType="Button" DeleteText="下作业载" ShowDeleteButton="True">                <ItemStyle HorizontalAlign="Center" />            </asp:CommandField>            <asp:HyperLinkField Text="提交作业" DataNavigateUrlFormatString="SubmitBusywork.aspx?course={0}&amp;time={1}" DataNavigateUrlFields="课程名称,作业次数">                <ItemStyle HorizontalAlign="Center" />            </asp:HyperLinkField>        </Columns>    </asp:GridView>

然后,就可以了啦!~

三。DIV的绝对居中

很多时候,我们需要在浏览器中让一个div居中进行显示,而不会受到滚动条的影响,那怎么才能得到效果?其实,很简单,你需要理解下面这段就可以了。

最前端开人郁闷的就是浏览器的兼容性问题,所以在下面的代码中通过各浏览器的特有属性,来进行判断浏览器的类型。

比如说,self.pageYOffset 如果它为true的话,那么它说明在IE9中起作用,也说明了这个属性在IE9中是独一无二的。

直接看代码:

<script type='text/javascript'>function myPopupRelocate() {var scrolledX, scrolledY;if (self.pageYOffset) {//IE9 起作用scrolledX = self.pageXOffset;scrolledY = self.pageYOffset;alert("self.pageYOffset");} else if (document.documentElement && document.documentElement.scrollTop) {// IE 6 ,360浏览器等起作用scrolledX = document.documentElement.scrollLeft; scrolledY = document.documentElement.scrollTop;alert("document.documentElement && document.documentElement.scrollTop");} else if (document.body) {//Chrome... IE9 Firfox....IE 5.5起作用scrolledX = document.body.scrollLeft;scrolledY = document.body.scrollTop;alert("document.body");}//以上是浏览器滚动的距离// alert("scrolledX:" + scrolledX);// alert("scrolledY:" + scrolledY);var centerX, centerY;if (self.innerHeight) {centerX = self.innerWidth;centerY = self.innerHeight;} else if (document.documentElement && document.documentElement.clientHeight) {centerX = document.documentElement.clientWidth;centerY = document.documentElement.clientHeight;} else if (document.body) {centerX = document.body.clientWidth;centerY = document.body.clientHeight;}alert("centerX:" + centerX);alert("centerY:" + centerY);var leftOffset = scrolledX + (centerX - 250) / 2;var topOffset = scrolledY + (centerY - 200) / 2;document.getElementById("mypopup").style.top = topOffset + "px";document.getElementById("mypopup").style.left = leftOffset + "px";}function fireMyPopup() {myPopupRelocate();document.getElementById("mypopup").style.display = "block";//            document.body.onscroll = myPopupRelocate;//            window.onscroll = myPopupRelocate;
        }</script>

HTML Code:

<div id='mypopup' name='mypopup' style='position: absolute; width: 250px; height: 200px;display: none; background: #ddd; border: 1px solid #000; z-index: 100'><p>我现在的位置是居中状态<br></p><input type='submit' value=' 关闭窗口! (2) ' onclick='document.getElementById("mypopup").style.display="none"'></div><input type='submit' value=' Fire! (2) ' onclick='fireMyPopup()'>

这就能得到在各个浏览器中绝对居中了。当然还有其他的方法,比如说 用css,也OK。

特殊情况:

如果,你不需要居中肿么办呢?很简单啊,你需要改的仅仅是下面这句话:

var leftOffset = scrolledX + (centerX - 250) / 2;
var topOffset = scrolledY + (centerY - 200) / 2;

比如说,你现在把当前的div放到top 100px,left 100px,就需要下面操作:

var leftOffset = scrolledX + 100;
var topOffset = scrolledY + 100;

好了,就先说这么这三个把!。祝大家 五一快乐哦!!~~

分享3段平时很实用的微代码,高手莫喷相关推荐

  1. 经验分享:10个简单实用的 jQuery 代码片段

    尽管各种 JavaScirpt 框架和库层出不穷,jQuery 仍然是 Web 前端开发中最常用的工具库.今天,向大家分享我觉得在网站开发中10个简单实用的 jQuery 代码片段. 您可能感兴趣的相 ...

  2. 分享一个使用Matchvs很实用的小技巧

    最近用游戏服务器引擎Matchvs开发了一款游戏,发现他们家的API还是很丰富的,只是在使用的过程中发现需要监听的回调有些多,写起来很麻烦,就把回调封装了一些,记录下来,以后再其他项目中使用,同时分享 ...

  3. 个人总结了下自己在XP系统下键盘组合代码,顺便分享下,其实很实用,可是你用到了麽?

    这个就是winkey  winkey+f :  不用再去移动鼠标点"开始→搜索→文件和文件夹"了,在任何状态下,只要一按winkey+f就会弹出搜索窗口.    winkey+r ...

  4. python的隐藏功能分享_【图片】分享一段功能非常简陋的python代码实现下载free种【pt吧】_百度贴吧...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 ##### class Torrents(): ''' Define a torrent ''' def __init__(self,torrent): ...

  5. 分享一段价值亿万的人工智能核心代码

    如果喜欢的话就拿去吧,不用客气.>Ω< package com.software.fanfan.ai;import java.util.Scanner;/*** Created by 追梦 ...

  6. 用python实现bt下载_【图片】分享一段功能非常简陋的python代码实现下载free种【pt吧】_百度贴吧...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 ##### class Torrents(): ''' Define a torrent ''' def __init__(self,torrent): ...

  7. 分享几段祖传的Python代码,拿来直接使用!

    今天分享几段工作生活中常用的代码,都是最为基础的功能和操作,而且大多还都是出现频率比较高的,很多都是可以拿来直接使用或者简单修改就可以放到自己的项目当中 日期生成 很多时候我们需要批量生成日期,方法有 ...

  8. 分享几段祖传的 Python 代码,拿来直接使用!

    作者 | 周萝卜 来源 | 萝卜大杂烩 今天分享几段工作生活中常用的代码,都是最为基础的功能和操作,而且大多还都是出现频率比较高的,很多都是可以拿来直接使用或者简单修改就可以放到自己的项目当中 日期生 ...

  9. 分享几段祖传的Python代码,拿来直接使用

    今天分享几段工作生活中常用的代码,都是最为基础的功能和操作,而且大多还都是出现频率比较高的,很多都是可以拿来直接使用或者简单修改就可以放到自己的项目当中 日期生成 很多时候我们需要批量生成日期,方法有 ...

最新文章

  1. 理解vuex -- vue的状态管理模式
  2. 用户体验分析:以 “师路南通网站” 为例
  3. python0.1+0.2_为什么0.1+0.2=0.30000000000000004
  4. vue实现卡片式上下滑动_基于Vue.js仿制探探卡片左右滑动特效
  5. 机器学习(十九)——PageRank算法, KNN, loss function详解
  6. centos 记录用户行为轨迹
  7. 算法入门经典习题第一章
  8. 【性能优化】PHP代码输出压缩后HTML
  9. 一台交换机不同vlan如何通信
  10. Atiitt 常见机器算法 理解 总结 目录 1. 机器学习的核心是“使用算法解析数据,从中学习,然后对世界上的某件事情做出决定或预测” 1 2. 1. 五大流派 2 2.1. ①符号主义:使用
  11. 解决Macbook pro安装绿联AX88179USB网卡驱动无效的问题
  12. Linux上的arping命令介绍
  13. 产业数字化转型升级案例:联合利华数字化供应链管理
  14. 真正免费的国外PHP建站空间
  15. CCF-相反数(C语言)
  16. 哪个邮箱好用又安全?群发邮件哪个邮箱好用?
  17. winpe 安装 win7 过程问题综述
  18. 解决IDEA的Plugin org.apache.maven.plugins:maven-archetype-plugin:RELEASE or one of its dependencies cou
  19. 理解Java7和8里面HashMap+ConcurrentHashMap的扩容策略
  20. android 3d车辆轨迹,极限汽车轨迹3D游戏

热门文章

  1. vscode弹出cmd_先看看 VS Code Extension 知识点,再写个 VS Code 扩展玩玩
  2. vs未指定启动文件_高效开发利器之自定义模板文件
  3. c语言大数倍数,leetcode-1346(检查整数及其两倍数是否存在)--C语言实现
  4. python网页结构分析_Python爬虫基础之网页组成解析
  5. matlab畸变校正代码_关于OpenCV中的去畸变
  6. SpringBoot视频教程
  7. Linux 中mysql常用命令
  8. MySQL ALTER命令
  9. 怎么通过java去调用并执行shell脚本以及问题总结
  10. 详解中奖概率逻辑:为什么你中不了特等奖(附原件)