我有一个针对.NET的数据动力学活动的报告。在本报告中,我将详细信息部分的列表属性设置为X。详细信息部分具有一个数据库文本框。

详细信息部分的列截面属性设置为跨down,然后将数据绑定机制自动填充数据量后,将数据填充数据和数据登录机制。

这是代码...

Public Sub RunReport
        Dim count As Integer = 0

        ' ...    get count

        Detail1.ColumnCount = count

        Me.DataSource = ds
        Me.DataMember = ds.Tables(0).TableName

End Sub

该代码正常工作,并且在整个报告中自动填写数据。

现在,我需要更改报告并圈出或突出显示报告中列的一项项目之一。

我找不到任何方法可以通过编程方式访问自动生成的列,因此我可以打开边框或绘制圆形或其他东西。有什么想法,我该怎么做?

塞思

有帮助吗?

解决方案

您可以通过在格式事件中设置控件的属性来打开边框。例如,如果您想在其值小于零时设置文本框的边框,则可以使用以下代码之类的内容:

 private void detail_Format(object sender, System.EventArgs eArgs)
 {
      if (this.TextBox1.Value < 0) {
           this.TextBox1.Border.BottomColor = System.Drawing.Color.Blue;
           this.TextBox1.Border.BottomStyle = BorderLineStyle.DashDot;
           this.TextBox1.Border.LeftColor = System.Drawing.Color.Blue;
           this.TextBox1.Border.LeftStyle = BorderLineStyle.DashDot;
           this.TextBox1.Border.RightColor = System.Drawing.Color.Blue;
           this.TextBox1.Border.RightStyle = BorderLineStyle.DashDot;
           this.TextBox1.Border.TopColor = System.Drawing.Color.Blue;
           this.TextBox1.Border.TopStyle = BorderLineStyle.DashDot;
      }
 }

这里 有关边境财产的更多信息。

在最终页面上获得控制的位置并不那么容易。您可以根据某些内容来计算位置,但是我建议使用控件本身突出显示所需的数据,而不是在页面上绘制。这将使您的生活更轻松:)

如果圆形对您很重要,则可以在ActiveReport中使用“形状”控件来通过基于条件设置其位置和可见性来实现此目的。只需确保形状的z订单在文本框下即可。使用形状的代码类似于我在上面的代码构造代码的方式,但是您将设置顶部/左/宽度/高度和形状控制的可见属性,而不是设置边框属性。有关形状控制的更多信息是 这里.

希望这可以帮助。

 Scott Willeke
 GrapeCity
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top