예제 #1
0
        protected override DevExpress.Utils.AppearanceObject RaiseGetRowStyle(int rowHandle, DevExpress.XtraGrid.Views.Base.GridRowCellState state, DevExpress.Utils.AppearanceObject appearance, out bool highPriority)
        {
            AppearanceObject ao = base.RaiseGetRowStyle(rowHandle, state, appearance, out highPriority);

            //若为空使用系统颜色(不使用特殊配色)
            if (this.m_SchemeColor == null)
            {
                return(ao);
            }

            if (this.m_SchemeColor.GridStyle == null)
            {
                return(ao);
            }


            bool b_1 = ((state & DevExpress.XtraGrid.Views.Base.GridRowCellState.Even) != 0);
            bool b_2 = ((state & DevExpress.XtraGrid.Views.Base.GridRowCellState.Odd) != 0);

            //object obj = this.m_SchemeColor.GridStyle.Get();

            //GridViewAppearances gva = obj as GridViewAppearances;
            if (this.m_GridViewAppearances != null)
            {
                if (b_1)
                {
                    ao.Assign(this.m_GridViewAppearances.EvenRow);
                }
                if (b_2)
                {
                    ao.Assign(this.m_GridViewAppearances.OddRow);
                }
            }

            if (this.m_UseSpecialColor)
            {
                //奇数偶数都做此操作
                if (b_1 || b_2)
                {
                    this.SetRowColor(rowHandle, ao);
                }
            }
            //AppearanceObject ao = base.RaiseGetRowStyle(rowHandle, state, appearance, out highPriority);
            //return base.RaiseGetRowStyle(rowHandle, state, appearance, out highPriority);
            return(ao);
        }