1、后台想实现这么一个效果:触发一个事件后在事件的最后使用javscript的return confirm( ' ')产生提示框,按确定的执行另一个事件,取消的结束事件.
在前台定义一个<input type="hidden" id="hidbtn" value="0" runat="server" />按钮,然后在写入一个javascript事件,这个事件是在页面加载后时候弹出来的
<script type="text/javascript">
window.onload = function () {
var hidbtn = document.getElementById("hidbtn");
if (confirm("确认删除该条数据吗?")) {
hidbtn.value = "1";
}
}
</script>
2、工厂模式的构建
static string _DataBase = ConfigurationSettings.AppSettings["DB"];
public static IAttachment GetAttachment()
{
object o = Activator.CreateInstance(Type.GetType("WebServices1_5." + _DataBase + ".Attachment"));//改变数据库的类型
if (o == null)
{
throw new Exception("加载操作数据类失败");
}
IAttachment attachment = (IAttachment)o; //返回一个类方法
return attachment;
}
3、div隐藏以后想要把他所占用的空间也回收回来就用:display:none
后台显示的时候是: this.div2.Style["display"] = "block";
4、阅读器关闭时尝试调用 FieldCount 无效异常 (sqlDataReader)
RepeaterContactList.DataSource = GetList(cusID);
RepeaterContactList.DataBind();
在DataBind()的时候抛出"阅读器关闭时尝试调用 FieldCount 无效"的异常;
看了下代码
public DbDataReader GetList(int? cusID)
{
using (DbDataReader dr = dbHelper.ExecuteReader(CommandType.Text,sql,parameters))
{
if (dr.HasRows)
{
return dr;
}
return null;
}
}
原因是使用了Using语句,在return之后,Using就把DbDataReader给关闭了,而DbDataReader 是需要保持连接使用的,所以这样引用会抛出异常.
解决方法很简单,可以用DataTable将DbDataReader dr给Load()到内存使用,也可以将DbDataReader dr给Load()到实体类中使用.
public DataTable GetList(int? cusID)
{
DataTable dt = new DataTable();
using (DbDataReader dr = dbHelper.ExecuteReader(CommandType.Text,parameters))
{
if (dr.HasRows)
{
dt.Load(dr);
return dt;
}
return null;
}
}
5、如何获取sqlDataReader内的数据(切记sqlDataReader只可以被加载到内存一次,所以必须要有接手的容器!!!)
类方法:sqlDataBase.RunProc("UserCheck",out reader);
全局变量:DataTable mydt = new DataTable();
局部变量:DataTable dt = new DataTable();
dt.Load(reader);
mydt = dt; //////此处需要注意,非常!!!!
GridView1.DataSource = mydt;
GridView1.DataBind();
最后的mydt仍然可以被重复利用,而sqlDataReader内的数据为空,即reader=null
6、WP7里边的checkBox复选功能,可以设置为三种选择方式,但是对于被操作完成后的参数接受是一个问题!
这时要使用bool?类型来接收,有三种参数即:true、false和null三种值,而null被.ToString()以后会变成""值,所以需要记住转化后用string类型接收结果为空!!
7、用silverlight自带的类使TextBlock换行
即在设计页面的时候可以使用<LineBreak />来设置换行,就像Asp上的“<br />”是效果一样的;
同时,如果我们想单个设置某些字段的大小、颜色、字体,我们可以设置<Run></Run>这个属性值即可
这两个属性这样设了,textwrapping="Wrap" AcceptsReturn="true".即可
dispatcherTimer Timer = new dispatcherTimer();
Timer.Interval = TimeSpan.FromMilliseconds(Speed);
Timer.Tick += new EventHandler(Timer_Tick);
Timer.Start();
Timer.End();
void Timer_Tick(object sender,EventAgrs e)
{ …… }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。