asp.net 拾遗格式化字符串 asp.net

来源:互联网 发布:杨支柱知乎 编辑:程序博客网 时间:2024/05/20 22:40

格式化字符串
DataFormatString="{0:P}" //自动转换为百分数
DataFormatString="{0:#.##}"//保留两位小数
参考:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconFormattingOverview.asp

在DataGrid里面查找控件
databound事件中使用e.Item.Cells[i].Controls[j] ,e.Item.FindControl(""))
ItemCommand事件中同上 或者使用DataGrid1.Items[0].Cells[0].Controls[0]); 注意都要强制转换制定控件类型.
e.Item.Cells[0].Text只能取到boundcolumn的值,且在ItemCommand里面取不到值.

如果有页面初始化时有数据绑定,则写在!Page.IsPostBack里,不然每次点击一个按钮时都会重新加载数据,可能会取不到输入控件的值.
在 使用Anthem.net的时候,虽然前端页面是不刷新的,但服务器端的cs代码依然按Page的生命周期依次执行.当然Page_Load里面的事件也 会执行.所以在传递数据时要用hidden字段或session等方法变通处理,善用Page.IsPostBack.

建议使用模版列 实现编辑,更新,取消按钮.ItemCommand、CancelCommand、DeleteCommand、EditCommand、 UpdateCommand执行时首先触发ItemCommand事件,然后触发他们的专有事件.可以通过按钮的CommandName方便地实现系统自 带编辑按钮的功能. 这个按钮如果出现代码重复执行两边的情况,应该检查是否在datagrid 标签中写有OnEditCommand 等事件,且在InitializeComponent中又绑定了一遍事件.两者选其一就可以了.
dataList.EditItemIndex = e.Item.ItemIndex;//首先赋值然后绑定
dataList.DataSource = TestData;
dataList.DataBind();

灵 活使用FooterTemplate .如果想在datagrid,datalist控件每页的下方显示一个空行,用来添加内容,那么用FooterTemplate是最佳选择.当 datagrid中数据源得到的datatable为空时,就只显示FooterTemplate中的控件,用户可以直接输入数据来新增内容.操作很便 捷.

e.Item.Cells[0].Attributes.Add("style","cursor:hand;");当鼠标移到单元格时显示手型图标

弹出一个不允许改变大小的模式窗口,然后动态改变其大小
function Resize_dialog(t,l,w,h)
{
if (typeof(window.dialogHeight)!="undefined")
{
window.dialogTop = t+"px;"
window.dialogLeft = l+"px;"
window.dialogHeight = h+"px;"
window.dialogWidth = w+"px;"
}
}
function Open_dialog(urls,w,h)
{
showModalDialog(urls,window,'edge: Raised; center: Yes; help: Yes; resizable: No; status: No;dialogHeight:'+h+'px;dialogWidth:'+w+'px');
}

tab多标签窗口显示,仿windows窗口风格:http://bbs.blueidea.com/thread-2606562-1-1.html