[DevExpress]设置TreeList图片节点背景色

关键代码:

        /// <summary>

        /// 设置图片节点的背景色

        /// 说明:在CustomDrawNodeImages事件中使用

        /// </summary>

        /// <param name="tree">TreeList</param>

        /// <param name="e">CustomDrawNodeImagesEventArgs</param>

        /// <param name="builderBackColorHandler">委托</param>

        public static void CustomImageNodeBackColor(this TreeList tree, CustomDrawNodeImagesEventArgs e, Func<TreeListNode, Color> builderBackColorHandler)

        {

            TreeListNode _node = e.Node;

            Color _backColor = builderBackColorHandler(_node);

            e.Graphics.FillRectangle(new SolidBrush(_backColor), e.Bounds);

        }

使用代码:

        private void tlLHData_CustomDrawNodeImages(object sender, CustomDrawNodeImagesEventArgs e)

        {

            try

            {

                tlLHData.CustomImageNodeBackColor(e, node =>

                {

                    string _cabId = node.GetKeyID();

                    CCabInfo _cabInfo = LHDBHelper.GetCabInfo(_cabId);

                    if (_cabInfo != null)

                    {

                        return _cabInfo.CtuOnlineStatus == 1 ? Color.White : Color.LightGray;

                    }

                    return Color.White;

                });

            }

            catch (Exception)

            {



            }

        }

代码效果

image

你可能感兴趣的:(DevExpress)