选取一行以后点击按钮提交到服务器,并获得选定行指定列的值以便操作,如修改删除等。
需要注意的是
FeaturePicker -> Selecttion -> Row Selection
要指定为Extended否则无法获得值
许定列则需设置 ControlSettings -> DisplayLayout -> CellClickActionDefault 为 CellSelect
处理事件函数则如此
private void Button4_Click(object sender, System.EventArgs e)
{
if(UltraWebGrid1.DisplayLayout.SelectedRows.Count>0)
{
DeleteSell(UltraWebGrid1.DisplayLayout.SelectedRows[0].Cells[0].Value.ToString());
}
else
{
Response.Write("<script>alert('请先选择一行数据再点击删除按钮')</script>");
}
很多属性都可以在服务器端设置的,这样做有个好处。因为有许多页面都要用到UtraWebGrid,虽然可以设置好一个样式后在其他页拷贝使用,但如果想修改麻烦就大了,写成个函数调用就可以了。如新建个页面,放入个UltraWebGrid双击该控件,将自动生成UltraWebGrid1_InitializeLayout,刚学。NET不久好象这个事件就托管了。目前不太球楚不要笑我。该函数里调用控件设置函数即可。我是通过继承管理员公共类来的。大家可能是写成静态函数吧。
如:
private void UltraWebGrid1_InitializeLayout(object sender, Infragistics.WebUI.UltraWebGrid.LayoutEventArgs e)
{
UltraWebGrid1.DisplayLayout.Bands[0].Columns[0].Header.Caption = "ID";
UltraWebGridSet(UltraWebGrid1);
}
public void UltraWebGridSet(Infragistics.WebUI.UltraWebGrid.UltraWebGrid SetTarget)
{
SetTarget.Height = Unit.Percentage(93);
SetTarget.Width = Unit.Percentage(100);
SetTarget.DisplayLayout.Pager.AllowPaging=true;
//UltraWebGrid1.DisplayLayout.Pager.QuickPages=4;
SetTarget.DisplayLayout.Pager.PageSize=18;
//UltraWebGrid1.DisplayLayout.Pager.StyleMode
SetTarget.DisplayLayout.Pager.PrevText = "上一页";
SetTarget.DisplayLayout.Pager.NextText = "下一页";
SetTarget.DisplayLayout.Pager.Pattern="<table width=100%><tr><td align=left>页码:[currentpageindex]/[pagecount] 每页:[pagesize]</td><td align=right>[prev] | [next] [default]<td></tr></table>";
}
终于觉得。NET理顺了开发速度的确比ASP快很多。