Exemple #1
0
        public void GridViewCheck(DevExpress.XtraGrid.Views.Grid.GridView gridView, string p, int id)
        {
            if (p == "user")
            {
                List<Users> listRelated = new List<Users>();
                listRelated = WcfServiceLocator.Create<IUsersManage>().FindRelatedUsersForUserGroup(id); //找出和指定用户组关联的用户
                for (int i = 0; i < gridView.RowCount; i++)
                {
                    var check = listRelated.Exists(delegate(Users user)
                    {
                        if (user.id == (int)gridView.GetRowCellValue(i, "id")) return true;
                        return false;
                    });
                    gridView.SetRowCellValue(i, "isChecked", check);
                }

            }
            if (p == "role")
            {
                List<Users> listRelated = new List<Users>();
                listRelated = WcfServiceLocator.Create<IRoleManage>().findRelatedUser(id); //找出和指定角色关联的用户
                for (int i = 0; i < gridView.RowCount; i++)
                {
                    var check = listRelated.Exists(delegate(Users user)
                    {
                        if (user.id == (int)gridView.GetRowCellValue(i, "id")) return true;
                        return false;
                    });
                    gridView.SetRowCellValue(i, "isChecked", check);
                }

            }
            if (p == "rolewithgroup")
            {
                List<Group> listRelated = new List<Group>();
                listRelated = WcfServiceLocator.Create<IRoleManage>().findRelatedGroup(id); //找出和指定角色关联的用户
                for (int i = 0; i < gridView.RowCount; i++)
                {
                    var check = listRelated.Exists(delegate(Group group)
                    {
                        if (group.Id == (int)gridView.GetRowCellValue(i, "Id")) return true;
                        return false;
                    });
                    gridView.SetRowCellValue(i, "isChecked", check);
                }
            }
        }
 public static void addChildRow(DevExpress.XtraGrid.Views.Grid.GridView view, int indexRow)
 {
     int newRowHandle = view.FocusedRowHandle;
     object newRow = view.GetRow(newRowHandle);
     if (view.GroupedColumns.Count > 0)
     {
         for (int i = 0; i < view.GroupedColumns.Count; i++)
         {
             view.SetRowCellValue(newRowHandle, view.GroupedColumns[i], indexRow);
         }
     }
 }
        private GridView _view; //表格对象

        #endregion Fields

        #region Methods

        /// <summary>
        /// 单击表格空间列头按钮
        /// </summary>
        /// <param name="gridView"></param>
        /// <param name="fieldName"></param>
        /// <param name="currentStatus"></param>
        /// <returns></returns>
        public bool ClickGridCheckBox(DevExpress.XtraGrid.Views.Grid.GridView gridView, bool currentStatus)
        {
            bool result = false;
            if (gridView != null)
            {
                gridView.ClearSorting();//禁止排序

                gridView.PostEditor();
                DevExpress.XtraGrid.Views.Grid.ViewInfo.GridHitInfo info;
                Point pt = gridView.GridControl.PointToClient(Control.MousePosition);
                info = gridView.CalcHitInfo(pt);
                if (info.InColumn && info.Column != null && info.Column.FieldName == _column.FieldName)
                {
                    for (int i = 0; i < gridView.RowCount; i++)
                    {
                        gridView.SetRowCellValue(i, _column, !currentStatus);
                    }
                    return true;
                }
            }
            return result;
        }