UtraWebGrid使用备忘

选取一行以后点击按钮提交到服务器,并获得选定行指定列的值以便操作,如修改删除等。
需要注意的是
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快很多。


原文地址:https://www.cnblogs.com/zkxp/p/314913.html