Пример #1
0
        /// <summary>
        /// 指定したステータスの行を検索する
        /// </summary>
        /// <param name="rowState">行ステータス</param>
        /// <returns>指定したステータスの行</returns>
        /// <remarks>行ステータスは論理和演算で複数条件の指定が可能</remarks>
        public DTRows Find(DataRowState rowState)
        {
            DataRowState workState;     // 行ステータスの退避用

            // List型として、指定したステータスの行を取得する
            List <DTRow> listRow = this._rows.Where <DTRow>(row => (row.RowState & rowState) != 0).ToList <DTRow>();

            // List型⇒DTRows型に行をコピーする
            DTRows rows = new DTRows(this._tblStat, this._cols);

            foreach (DTRow row in listRow)
            {
                // 元の行ステータスを退避させる
                workState = row.RowState;

                // DTRowsに行を追加する
                rows.Add(row);

                // 行ステータスを元に戻す
                row.RowState = workState;
            }

            // 行リストを返す
            return(rows);
        }
Пример #2
0
        /// <summary>
        /// 指定したステータスの行を検索する
        /// </summary>
        /// <param name="rowState">行ステータス</param>
        /// <returns>指定したステータスの行</returns>
        /// <remarks>行ステータスは論理和演算で複数条件の指定が可能</remarks>
        public DTRows Find(DataRowState rowState)
        {
            DataRowState workState;     // 行ステータスの退避用

            // List型として、指定したステータスの行を取得する

            // .NET Framework 3.5 以降で開発する場合は
            // 以下の行のコメントを解除できます。
            //    List<DTRow> listRow = this._rows.Where<DTRow>(row => (row.RowState & rowState) != 0).ToList<DTRow>();

            // .NET Framework 2.0 以前で開発する場合は
            // 上記に代わり以下のコードブロックを使用 ---- start
            List <DTRow> listRow = this._rows.FindAll(
                delegate(DTRow row)
            {
                if ((row.RowState & rowState) != 0)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
                );
            // ------------------------------------------- end

            // List型⇒DTRows型に行をコピーする
            DTRows rows = new DTRows(this._tblStat, this._cols);

            foreach (DTRow row in listRow)
            {
                // 元の行ステータスを退避させる
                workState = row.RowState;

                // DTRowsに行を追加する
                rows.Add(row);

                // 行ステータスを元に戻す
                row.RowState = workState;
            }

            // 行リストを返す
            return(rows);
        }
Пример #3
0
        /// <summary>
        /// 指定したステータスの行を検索する
        /// </summary>
        /// <param name="rowState">行ステータス</param>
        /// <returns>指定したステータスの行</returns>
        /// <remarks>行ステータスは論理和演算で複数条件の指定が可能</remarks>
        public DTRows Find(DataRowState rowState)
        {
            DataRowState workState;     // 行ステータスの退避用

            // List型として、指定したステータスの行を取得する

            // .NET Framework 3.5 以降で開発する場合は
            // 以下の行のコメントを解除できます。
            //    List<DTRow> listRow = this._rows.Where<DTRow>(row => (row.RowState & rowState) != 0).ToList<DTRow>();

            // .NET Framework 2.0 以前で開発する場合は
            // 上記に代わり以下のコードブロックを使用 ---- start
            List<DTRow> listRow = this._rows.FindAll(
                delegate(DTRow row)
                {
                    if ((row.RowState & rowState) != 0)
                    {
                        return true;
                    }
                    else
                    {
                        return false;
                    }
                }
            );
            // ------------------------------------------- end

            // List型⇒DTRows型に行をコピーする
            DTRows rows = new DTRows(this._tblStat, this._cols);
            foreach (DTRow row in listRow)
            {
                // 元の行ステータスを退避させる
                workState = row.RowState;

                // DTRowsに行を追加する
                rows.Add(row);

                // 行ステータスを元に戻す
                row.RowState = workState;
            }

            // 行リストを返す
            return rows;
        }
Пример #4
0
        /// <summary>
        /// 指定したステータスの行を検索する
        /// </summary>
        /// <param name="rowState">行ステータス</param>
        /// <returns>指定したステータスの行</returns>
        /// <remarks>行ステータスは論理和演算で複数条件の指定が可能</remarks>
        public DTRows Find(DataRowState rowState)
        {
            DataRowState workState;     // 行ステータスの退避用

            // List型として、指定したステータスの行を取得する
            List<DTRow> listRow = this._rows.Where<DTRow>(row => (row.RowState & rowState) != 0).ToList<DTRow>();

            // List型⇒DTRows型に行をコピーする
            DTRows rows = new DTRows(this._tblStat, this._cols);
            foreach (DTRow row in listRow)
            {
                // 元の行ステータスを退避させる
                workState = row.RowState;

                // DTRowsに行を追加する
                rows.Add(row);

                // 行ステータスを元に戻す
                row.RowState = workState;
            }

            // 行リストを返す
            return rows;
        }