/// <summary>
        /// 这个方法,用于触发 ClickRelatedBugButton 路由事件
        /// </summary>
        /// <param name="_newValue">被点击的Bug的名字</param>
        private void OnClickRelatedBugNameButton(HighlightText _newValue)
        {
            //创建路由事件参数
            RoutedPropertyChangedEventArgs <HighlightText> args = new RoutedPropertyChangedEventArgs <HighlightText>(_newValue, _newValue);

            //设置这是哪个路由事件?
            args.RoutedEvent = CreateBugUiControl.ClickRelatedBugNameButtonEvent;

            //引发这个路由事件
            RaiseEvent(args);
        }
        /// <summary>
        /// 复制
        /// (把当前对象,复制一遍)
        /// </summary>
        /// <returns>复制出来的新对象</returns>
        public HighlightText Copy()
        {
            //新对象
            HighlightText _newHighlightText = new HighlightText();

            //赋值
            _newHighlightText.Text      = this.Text;
            _newHighlightText.Highlight = this.highlight;

            return(_newHighlightText);
        }
Пример #3
0
        public BugData()
        {
            Id       = -1;
            itemData = new BugItemData()
            {
                Data = this
            };

            name     = new HighlightText();
            progress = ProgressType.None;
            priority = PriorityType.None;

            TemperamentId = -1;
            isDelete      = false;
        }
Пример #4
0
 /// <summary>
 /// 当点击[相关Bug]按钮时
 /// </summary>
 /// <param name="_bugName">点击的Bug的名字</param>
 public void ClickRelatedBugNameButton(HighlightText _bugName)
 {
     UiControl.BugName = _bugName.Text;//修改Bug的名字
 }
Пример #5
0
        /// <summary>
        /// 获取相关的Bug名字
        /// (根据string,查找关联的Bug的名字)
        /// </summary>
        /// <param name="_highlight">要查找的关键字</param>
        /// <returns>符合关键字的Bug的名字</returns>
        public ObservableCollection <HighlightText> Related(string _highlight)
        {
            //容器:相关联的BugName
            ObservableCollection <HighlightText> _relatedBugNames = new ObservableCollection <HighlightText>();

            if (_highlight != null && _highlight != "")
            {
                //把_highlight改为小写
                string _newHighlight = _highlight.ToLower();//把字符串str中的所有字符转换为小写

                //把_highlight去掉首尾的空格
                _newHighlight = _newHighlight.Trim();

                //获取到所有的Bug
                ObservableCollection <BugData> _bugDatas = AppManager.Systems.BugSystem.BugDatas;

                //重新排序(创建时间,从后到前排序)
                List <BugData> _sortBugDatas = new List <BugData>();
                if (_bugDatas != null)
                {
                    for (int i = 0; i < _bugDatas.Count; i++)
                    {
                        //取到Bug
                        BugData _bugData = _bugDatas[i];

                        //如果Bug没有被删除
                        if (_bugData != null && _bugData.IsDelete != true)
                        {
                            _sortBugDatas.Add(_bugDatas[i]);
                        }
                    }
                }

                //对[创建时间]排序
                _sortBugDatas.Sort((bug1, bug2) =>
                {
                    /* 这个Lamba表达式的返回值为int类型,意思是bug1和bug2比较的大小。(大的排后面)
                     * 如果不能理解这段代码,可以搜索"C# List 多权重排序" */

                    int _index = 0;

                    //对[创建时间]进行排序(从高到低)
                    _index -= DateTime.Compare(bug1.CreateTime, bug2.CreateTime);

                    return(_index);
                });

                //进行过滤
                if (_sortBugDatas != null)
                {
                    //遍历所有的Bug
                    for (int i = 0; i < _sortBugDatas.Count; i++)
                    {
                        //把BugName改为小写
                        string _newBugName = _sortBugDatas[i].Name.Text.ToLower();//把字符串str中的所有字符转换为小写

                        //如果BugName中,存在这个关键字
                        if (_newBugName.Contains(_newHighlight) == true && _newHighlight != "")
                        {
                            HighlightText _relatedBugName = _sortBugDatas[i].Name.Copy(); //把这个Name复制一下
                            _relatedBugName.Highlight = _highlight;                       //更改高亮
                            _relatedBugNames.Add(_relatedBugName);                        //加入集合中
                        }
                    }
                }
            }

            //赋值
            ShowRelatedBugNames = _relatedBugNames;

            //返回值
            return(_relatedBugNames);
        }