2

我们有一个报告应用程序,它在将其发送给客户等之前从我们的数据库中的信息中填充一个单词模板。应用程序的其余部分运行没有问题,但是当我尝试将表格单元格设置为粗体时,它在 VS 中的行为不同IDE 比我在外部运行它时。

我尝试了下面代码的不同变体,但是无论我在 VS IDE 中运行它时做什么,它都会成功地将相应的表格单元格设置为粗体,但如果我在 IDE 之外运行它,表格单元格不会加粗。

Dim oWord As Word.Application = Nothing
Dim oDoc As Word.Document = Nothing
Dim Table0 As Word.Table = Nothing


Private Sub SetBold(ByRef currentTable As Word.Table, ByVal Col1Bold As Boolean, ByVal Row1Bold As Boolean)
    With currentTable
        For c = 1 To .Columns.Count
            For r = 1 To .Rows.Count
                .Cell(r, c).Range.Font.Bold = If(c = 1 And Col1Bold = True, True, If(r = 1 And Row1Bold = True, True, False))
            Next
        Next
    End With

    End Sub

这篇文章谈论的是类似的东西(在 Visual Studio 内部和外部运行的结果不同),但我无法用它来解决我的问题。

我不知道为什么会这样,应用程序的其余部分运行完全没有问题。

4

1 回答 1

0

我不知道是什么导致了这个问题,但我发现在粗体赋值之前放置 system.threading.thread.sleep(250) 可以解决问题。所以看起来它与时间和线程有关。

于 2013-06-14T08:48:32.917 回答