2009-10-20

来源:互联网 发布:网络鬼故事宁财神 编辑:程序博客网 时间:2024/05/14 20:06

1.行复制

dr1.ItemArray = this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"].Rows[0].ItemArray;

 

2.表里移除行

//收集数据

DataTable dt = this.ActiveWrapper.BusinessDataSet.Tables["con_evaluatenew"] as DataTable;

DataRow[] drs = new DataRow[dt.Rows.Count];

int count = 0;

foreach (EvaluateEntityNew.con_evaluatenewRow dr in dt.Rows)

{

     if (dr["choose"] == DBNull.Value || Convert.ToBoolean(dr["choose"]) == false)

      drs[count++] = dr;

}

for (int j = 0; j < count; j++)

{

      dt.Rows.Remove(drs[j]);

}

 

3.表数据过滤,排序

this._contractDS.Tables["con_contract"].DefaultView.RowFilter = "contype = 'CarSales'"

this._contractDS.Tables["con_contract"].DefaultView.Sort = "createdate asc";

this._curFrm.gridViewDiscuss.ActiveFilter.NonColumnFilter = "[con_systemcode] = '" + conSystemcode + "'";

DataRow[] drs = this.ActiveWrapper.BusinessDataSet.Tables["con_insure"].Select("insureid='" + itemdt.Rows[0]["insureid"].ToString()+"'");

 

4.表里每行的列最大值

object obj = this.ActiveWrapper.BusinessDataSet.Tables["con_insure"].Compute("max(id)", "");

 

5.选中全选事件

private void gridViewContract_Click(object sender, EventArgs e)

{

if(this._contractDS.Tables["con_contract"]==null

||this._contractDS.Tables["con_contract"].Rows.Count <= 0) return;

   try

   {

     if (((DevExpress.XtraGrid.Views.Grid.GridView)(sender)).PressedColumn.Caption == "全选")

     {

         for (int i = 0; i < this._contractDS.Tables["con_contract"].Rows.Count; i++)

          {

              this._contractDS.Tables["con_contract"].Rows[i]["choose"] = true;

          }

         ((DevExpress.XtraGrid.Views.Grid.GridView)(sender)).PressedColumn.Caption = "全清";

     }

     else if

(((DevExpress.XtraGrid.Views.Grid.GridView)(sender)).PressedColumn.Caption == "全清")

        {

              for (int i = 0; i < this._contractDS.Tables["con_contract"].Rows.Count; i++)

              {

                  this._contractDS.Tables["con_contract"].Rows[i]["choose"] = false;

              }

         ((DevExpress.XtraGrid.Views.Grid.GridView)(sender)).PressedColumn.Caption = "全选";

         }

     }

     catch { }

}

 

6.表里加上选中列

DataColumn dc = new DataColumn("choose", typeof(bool));

dc.DefaultValue = true;

this. ActiveWrapper.BusinessDataSet.Tables["con_evaluatenew"].Columns.Add(dc);

 

7.判断是否选中

//判断是否选中

int num = 0;

foreach (DataRow dr in this.ActiveWrapper.BusinessDataSet.Tables["con_evaluatenew"].Rows)

{

if ((bool)dr["choose"])

    {

       num++;

    }

}

if (num == 0)

{

     MessageBox.Show(ResLanguage.GetLanguage("请选择数据"));

     return;

}

 

8.根据下面列表查询出上面合同列表

if (filterDiscuss.ContainsKey("dis_subject"))

{

   DataTable dtCon = this._contractDS.Tables["con_contract"].Clone();

string express = "";

   for (int i = 0; i < this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"].Rows.Count; i++)

   {

if (this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"].Rows.Count == 1)

        {

express="con_systemcode='"+this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"].Rows[0]["con_systemcode"].ToString() + "'";

        }

        if (this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"].Rows.Count > 1)

        {

             if (i == 0)

             {

express="con_systemcode='"+this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"].Rows[0]["con_systemcode"].ToString() + "'";

              }

             else

              {

             express += " or con_systemcode= '" + this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"].Rows[i]["con_systemcode"].ToString() + "'";

               }

        }

}

//如果查询到没有任何讨论就跳过

if (this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"].Rows.Count > 0)

 {

     DataRow[] foundRows = this._contractDS.Tables["con_contract"].Select(express);

     if (foundRows.Length > 0)

     {

         foreach (DataRow dr in foundRows)

          {

               dtCon.ImportRow(dr);

          }

      }

  }

this._contractDS.Tables["con_contract"].Clear();

foreach (DataRow drC in dtCon.Rows)

{

     this._contractDS.Tables["con_contract"].ImportRow(drC);

}

 //重新绑定

              

this._curFrm.gridContractFull.DataSource = this._contractDS.Tables["con_contract"];

this._curFrm.gridDiscuss.DataSource =

this.ActiveWrapper.BusinessDataSet.Tables["con_discuss"];

}

else

{

   //数据绑定到grid

this.BindGrid(this.ActiveWrapper);

 }

 

9.点击上面列表查出下面列表数据

合同列表单击事件

private void gridContractFull_Click(object sender, EventArgs e)

{

   string conSystemcode = string.Empty,conType = string.Empty;

this.GetSelectContractSystemcode(ref conSystemcode,ref conType);

  if (!string.IsNullOrEmpty(conSystemcode))

  {

   this._curFrm.gridViewDiscuss.ActiveFilter.NonColumnFilter = "[con_systemcode] = '" + conSystemcode + "'";

  }

 

void gridViewContract_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)

{

    if (this.ActiveWrapper == null)

    {

        return;

    }

   string conSystemcode = string.Empty, conType = string.Empty;

this.GetSelectContractSystemcode(ref conSystemcode, ref conType);

   if (!string.IsNullOrEmpty(conSystemcode))

   {

      this._curFrm.gridViewDiscuss.ActiveFilter.NonColumnFilter = "[con_systemcode] = '" + conSystemcode + "'";

   }

    else

   {

        this._curFrm.gridViewDiscuss.ActiveFilter.NonColumnFilter = "[con_systemcode] = '@@###*_conSystemcode_*###@@'";    //使用特殊字符过滤掉所有讨论

    }

 }

 

取讨论列表当前选中行的con_systemcode

private void GetSelectContractSystemcode(ref string systemCode,ref string conType)

{

     if (this._curFrm.gridViewContract.GetSelectedRows().Length > 0)

       {

         DataRow row = this._curFrm.gridViewContract.GetDataRow((this._curFrm.gridViewContract.GetSelectedRows())[0]);

        systemCode = row["con_systemcode"].ToString();

       }          

}

原创粉丝点击