Ejemplo n.º 1
0
        void OnPointerReleased(object sender, PointerRoutedEventArgs e)
        {
            if (e.IsTouch())
            {
                // 触摸模式只支持列排序
                if (_pointerID == e.Pointer.PointerId)
                {
                    ReleasePointerCapture(e.Pointer);
                    _pointerID = null;
                    ChangedSortState();
                }
                return;
            }

            if (_isDragging)
            {
                if (_dragTgtCol != null)
                {
                    // 拖拽结束
                    _owner.FinishedDrag();
                    Cols cols  = _owner.Lv.Cols;
                    int  index = cols.IndexOf(_dragTgtCol);
                    cols.Remove(Col);
                    cols.Insert(index, Col);
                    cols.Invalidate();
                }
                else
                {
                    // 列排序
                    ChangedSortState();
                }
            }
            ResetMouseState();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Returns Second Part of Query format;
        /// for Select --> ""
        /// for Insert --> Values({0})
        /// for Update Or Delete Where IdColumn=@IdColumn
        /// </summary>
        /// <returns></returns>
        private string getSecondPart()
        {
            string        _secondPart = "";
            string        paramPrefix = GetParameterPrefix();
            string        prefix      = GetPrefix();
            string        suffix      = GetSuffix();
            StringBuilder strBuilder;
            List <string> Cols;

            switch (_queryType)
            {
            case QueryTypes.Select:
                break;

            case QueryTypes.InsertAndGetId:
            case QueryTypes.Insert:
            {
                Cols = _baseBO.GetColumnChangeList();
                Cols.Remove(_baseBO.GetIdColumn());
                if (Cols.Count == 0)
                {
                    return("");
                }

                strBuilder = new StringBuilder();
                foreach (string col in Cols)
                {
                    strBuilder.AppendFormat("{0}{1},", paramPrefix, col);
                }

                _secondPart = strBuilder.ToString();
                return(_secondPart.Substring(0, _secondPart.Length - 1));
            }

            case QueryTypes.SelectWhereId:
            case QueryTypes.Delete:
            case QueryTypes.Update:
                _secondPart = string.Format("{0}{1}{2}={3}{1}", prefix,
                                            _baseBO.GetIdColumn(), suffix, paramPrefix);
                break;

            case QueryTypes.SelectWhereChangeColumns:
            {
                strBuilder = new StringBuilder();
                Cols       = _baseBO.GetColumnChangeList();

                if (Cols.Count == 0)
                {
                    return("");
                }

                foreach (string col in _baseBO.GetColumnChangeList())
                {
                    strBuilder.AppendFormat("{0}{1}{2}={3}{1} And ",
                                            prefix, col, suffix, paramPrefix);
                }
                _secondPart = strBuilder.ToString();
                return(_secondPart.Substring(0, _secondPart.Length - 5));
            }

            default:
                break;
            }
            return(_secondPart);
        }
        /// <summary>
        /// Returns Second Part of Query format;
        /// for Select  Or Delete --> ""
        /// for Insert --> Table({0})
        /// for Update Set Column=@Column
        /// </summary>
        /// <returns></returns>
        private String GetFirstPart()
        {
            String        _firstPart  = "";
            String        paramPrefix = GetParameterPrefix();
            String        prefix      = GetPrefix();
            String        suffix      = GetSuffix();
            StringBuilder strBuilder;
            List <String> Cols;

            switch (_queryType)
            {
            case QueryTypes.SelectWhereId:
            case QueryTypes.SelectWhereChangeColumns:
            case QueryTypes.SelectChangeColumns:
            case QueryTypes.Select:
            case QueryTypes.Delete:
                break;

            case QueryTypes.InsertAndGetId:
            case QueryTypes.InsertAnyChange:
            case QueryTypes.Insert:
            {
                Cols = _baseBO.GetColumnChangeList();
                if (_queryType != QueryTypes.InsertAnyChange)
                {
                    Cols.Remove(_baseBO.GetIdColumn());
                }

                if (Cols.Count == 0)
                {
                    return("");
                }

                strBuilder = new StringBuilder();
                foreach (String col in Cols)
                {
                    strBuilder.AppendFormat("{0}{1}{2},", prefix, col, suffix);
                }

                _firstPart = strBuilder.ToString();

                return(_firstPart.Substring(0, _firstPart.Length - 1));
            }

            case QueryTypes.Update:
            {
                strBuilder = new StringBuilder();
                Cols       = _baseBO.GetColumnChangeList();
                Cols.Remove(_baseBO.GetIdColumn());

                if (Cols.Count == 0)
                {
                    return("");
                }
                if (_ConnType != ConnectionTypes.Odbc)
                {
                    foreach (String col in _baseBO.GetColumnChangeList())
                    {
                        strBuilder.AppendFormat("{0}{1}{2}={3}{1}, ",
                                                prefix, col, suffix, paramPrefix);
                    }
                }
                else
                {
                    foreach (String col in _baseBO.GetColumnChangeList())
                    {
                        strBuilder.AppendFormat("{0}={1}, ",
                                                col, paramPrefix);
                    }
                }
                _firstPart = strBuilder.ToString();
                return(_firstPart.Substring(0, _firstPart.Length - 2));
            }

            default:
                break;
            }

            return(_firstPart);
        }