0

我正在创建一个新单元格 = new XRTableCell();

我将展示我的代码示例。即使我在“如果”中更改了它,我的单元格中总是以相同的颜色结束。

foreach (TaskTime tt in di.TaskTimes[i])
                    {
.....

TimeToAdd = ClassLibrary.Utils.GetTimeStringFromSec(tt.FromSec % 86400) + " - " + ClassLibrary.Utils.GetTimeStringFromSec(tt.UntilSec % 86400) + " (" + tt.Abbreviation+ ")";

                        if (taskTimeTextBox.Text.Length > 0)
                            taskTimeTextBox.Text += "\n";
                        taskTimeTextBox.Text += TimeToAdd;

if (tt.OnOtherCostDivision)
                            {
                                taskTimeTextBox.SelectionStart = taskTimeTextBox.Find(TimeToAdd);
                                taskTimeTextBox.SelectionFont = new Font("Calibri", 9, FontStyle.Italic);
                                taskTimeTextBox.SelectionColor = Color.Gray;
                            }
                            else
                            {
                                taskTimeTextBox.SelectionStart = taskTimeTextBox.Find(TimeToAdd);
                                taskTimeTextBox.SelectionFont = new Font("Calibri", 9, FontStyle.Italic);
                                taskTimeTextBox.SelectionColor = Color.Blue;
                            }

                richTxtObject.Rtf = taskTimeTextBox.Rtf;
                cell.Controls.Add(richTxtObject);
            }
            row.Cells.Add(cell);
4

1 回答 1

0

魂飞魄散!当我以这种方式“taskTimeTextBox.Text += xxxxxxxx”时没有工作。所以我制作了一个字符串列表,如果它是“onOtherCostDivision”,则保存我的文本。后来我不得不循环我的列表并查看最终的 taskTimeTextBox.Text 是否包含文本,因此我添加了颜色。

                    foreach (var task in taskCostDivList)
                {
                    if (taskTimeTextBox.Text.Contains(task))
                    {
                        taskTimeTextBox.SelectionStart = taskTimeTextBox.Find(task);
                        taskTimeTextBox.Font = new Font("Calibri", 9, FontStyle.Italic);
                        taskTimeTextBox.SelectionColor = Color.Gray;
                    }
                    else
                    {
                        taskTimeTextBox.Font = new Font("Calibri", 9, FontStyle.Regular);
                        taskTimeTextBox.SelectionColor = Color.Black;
                    }
                }
于 2012-09-24T14:42:15.637 回答