关于DevExpress xtragrid xtrareport小记

用了快半年的DevExpress控件确实想起最开始接触的艰辛,所以在这里把自己在开发过程中需要注意的地方记下,希望给新接触的人一个提示,纯属个人用法,不对的地方还请指出:

 

xtragrid:

      1、如何在表格中选择了下拉后,更具下拉列表的值自动带出其他值

private void gridView1_CellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {

             if (is_status != "") return;

                       DevExpress.XtraEditors.Repository.RepositoryItemGridLookUpEdit glue = (DevExpress.XtraEditors.Repository.RepositoryItemGridLookUpEdit)gridView1.Columns["SL_CNEWID"].ColumnEdit;
            if (glue == null) return;
            DataRowView drv = (DataRowView)glue.GetRowByKeyValue(e.Value);
            if (drv == null) return;

            is_status = "ing";
            gv.SetRowCellValue(gv.FocusedRowHandle, gv.Columns["SL_NAME"], drv["货物名称"]);
            gv.SetRowCellValue(gv.FocusedRowHandle, gv.Columns["SL_MODEL"], drv["型号"]);
            gv.SetRowCellValue(gv.FocusedRowHandle, gv.Columns["SL_SUNEWID"], drv["供应商"]);

            is_status = "";

        }

      注:有时候这个SetRowCellValue方法会触发,CellValueChanged事件,这里需要定义一个实例变量is_status来标注。

 

     2、根据表格中字段1的信息,筛选字段2中的下拉列表,可以多列筛选:

       private void gridView1_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            if (is_status != "") return;
            gridView1.CloseEditor();
            gridView1.UpdateCurrentRow();
            string ls_slnewid = "";
            DevExpress.XtraGrid.Views.Grid.GridView gv = (DevExpress.XtraGrid.Views.Grid.GridView)sender;

            if (e.Column.FieldName.ToUpper() == "SL_HS")
                {
                    //对下拉列表进行筛选
                    DevExpress.XtraEditors.Repository.RepositoryItemGridLookUpEdit glue = (DevExpress.XtraEditors.Repository.RepositoryItemGridLookUpEdit)gridView1.Columns["SL_CNEWID"].ColumnEdit;
                    if (glue == null) return;
                    glue.View.Columns["HS编码"].FilterInfo = new DevExpress.XtraGrid.Columns.ColumnFilterInfo("HS编码 = '" + e.Value.ToString() + "'");
                    //glue.View.ActiveFilterString = "CA_HS = '"+ e.Value.ToString() +"'";
                }

           } 

        3、

 

XtraReport:

      1、为什么做完报表了,在实际运行中明明有多行数据缺只显示一行?

           网上有人说在构造函数中赋值,反正我是没成功,需要在制作报表中把报表关联的表去掉即可!

      2、

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值