0

新しいセルを作成しています = new XRTableCell();

私のコードのサンプルを示します。「If」で変更しても、セル内の色は常に同じになります。

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 に答える